Pre-morbid characterization of anatomical object using statistical shape modeling (ssm)

ABSTRACT

Techniques are described for determining a pre-morbid shape of an anatomical object. Processing circuitry may determine an aligned shape based on image data with under- or over-segmentation. The processing circuitry may utilize the aligned shape and a shape model such as a mean shape model of the anatomical object to register the aligned shape to the shape model and generate information indicative of the pre-morbid shape of the anatomical object.

This application claims the benefit of U.S. Patent Application No.62/826,172 filed on Mar. 29, 2019, U.S. Provisional Patent ApplicationNo. 62/826,362 filed on Mar. 29, 2019, and to U.S. Provisional PatentApplication No. 62/826,410 filed on Mar. 29, 2019, the entire content ofall of which is incorporated herein by reference

BACKGROUND

Surgical joint repair procedures involve repair and/or replacement of adamaged or diseased joint. A surgical joint repair procedure, such asjoint arthroplasty as an example, may involve replacing the damagedjoint with a prosthetic that is implanted into the patient's bone.Proper selection or design of a prosthetic that is appropriately sizedand shaped and proper positioning of that prosthetic are important toensure an optimal surgical outcome. A surgeon may analyze damaged boneto assist with prosthetic selection, design and/or positioning, as wellas surgical steps to prepare bone or tissue to receive or interact witha prosthetic.

SUMMARY

This disclosure describes example techniques to perform pre-morbidcharacterization of patient anatomy, such as one or more anatomicalobjects. Pre-morbid characterization refers to determining a predictormodel that predicts characteristics (e.g., size, shape, location) ofpatient anatomy as the anatomy existed prior to damage to the patientanatomy or disease progression of the anatomy. In examples described inthis disclosure, the predictor model may be a graphical shape model,such as a 3D volume, that a surgeon can view to assist in planning of anorthopaedical surgical procedure, e.g., to repair or replace anorthopedic joint, as one example.

In some examples, generating the pre-morbid characterization relies onimaging of the anatomical objects after the damage or diseaseprogression. However, the damage or disease progression causes loss ofportions of the anatomical objects that would be desirable to have forgenerating the pre-morbid characterization. Moreover, over-segmentationor under-segmentation, as described below, from imaging of theanatomical objects also causes loss of imaging data that is useable toperform the pre-morbid characterization.

This disclosure describes example techniques to determine arepresentation of a pre-morbid anatomical object (e.g., a predictor ofthe pre-morbid anatomical object) using statistical shape modeling(SSM), and particularly, determining a shape model representative of thepatient pre-morbid anatomical object based on current patient anatomy,in accordance with a cost function.

In one example, the disclosure describes a method for determining apre-morbid shape of an anatomical object of an orthopedic joint of apatient, the method comprising determining respective medializationvalues for each of a plurality of estimated shape models, wherein theplurality of estimated shape models is generated from a shape model, andwherein each of the medialization values is indicative of an amount bywhich each respective one of the estimated shape models is medializedrelative to a current position of the anatomical object, determiningrespective cost values for each of the plurality of estimated shapemodels based at least in part on the respective determined medializationvalues for each of the plurality of estimated shape models, selecting anestimated shape model from the plurality of estimated shape model havinga cost value of the respective cost values that satisfies a function forthe cost value, and generating information indicative of the pre-morbidshape of the anatomical object based on the selected estimated shapemodel.

In one example, the disclosure describes a device for determining apre-morbid shape of an anatomical object of an orthopedic joint of apatient, the device comprising a memory configured to store one or moreof a shape model and a plurality of estimated shape model and processingcircuitry. The processing circuitry is configured to determinerespective medialization values for each of the plurality of estimatedshape models, wherein the plurality of estimated shape models isgenerated from the shape model, and wherein each of the medializationvalues is indicative of an amount by which each respective one of theestimated shape models is medialized relative to a current position ofthe anatomical object, determine respective cost values for each of theplurality of estimated shape models based at least in part on therespective determined medialization values for each of the plurality ofestimated shape models, select an estimated shape model from theplurality of estimated shape model having a cost value of the respectivecost values that satisfies a function for the cost value, and generateinformation indicative of the pre-morbid shape of the anatomical objectbased on the selected estimated shape model.

In one example, the disclosure describes a computer-readable storagemedium storing instructions thereon that when executed cause one or moreprocessors to determine respective medialization values for each of aplurality of estimated shape models, wherein the plurality of estimatedshape models is generated from a shape model, and wherein each of themedialization values is indicative of an amount by which each respectiveone of the estimated shape models is medialized relative to a currentposition of the anatomical object, determine respective cost values foreach of the plurality of estimated shape models based at least in parton the respective determined medialization values for each of theplurality of estimated shape models, select an estimated shape modelfrom the plurality of estimated shape model having a cost value of therespective cost values that satisfies a function for the cost value, andgenerate information indicative of a pre-morbid shape of an anatomicalobject based on the selected estimated shape model.

In one example, the disclosure describes a system for determining apre-morbid shape of an anatomical object of an orthopedic joint of apatient, the system comprising means for determining respectivemedialization values for each of a plurality of estimated shape models,wherein the plurality of estimated shape models is generated from ashape model, and wherein each of the medialization values is indicativeof an amount by which each respective one of the estimated shape modelsis medialized relative to a current position of the anatomical object,means for determining respective cost values for each of the pluralityof estimated shape models based at least in part on the respectivedetermined medialization values for each of the plurality of estimatedshape models, means for selecting an estimated shape model from theplurality of estimated shape model having a cost value of the respectivecost values that satisfies a function for the cost value, and means forgenerating information indicative of the pre-morbid shape of theanatomical object based on the selected estimated shape model.

In one example, the disclosure describes a method for determining apre-morbid shape of an anatomical object of an orthopedic joint of apatient, the method comprising receiving an aligned shape and a shapemodel, performing an iterative closest point (ICP) loop, whereinperforming the ICP loop comprises modifying the aligned shape, comparingthe modified aligned shape to the shape model, determining a cost valuebased on the comparison, and repeating the modifying, comparing, anddetermining until the cost value satisfies a threshold value to generatea first order shape, wherein the first order shape comprises themodified aligned shape associated with the cost value that satisfies thethreshold value, performing an elastic registration (ER) loop, whereinperforming the ER loop comprises receiving the first order shape and theshape model, determining respective cost values for each of a first setof plurality of estimated shape models based on the first order shapeand respective plurality of estimated shape models, wherein theplurality of estimated shape models is generated based on the shapemodel, and determining a first estimated shape model of the plurality ofestimated shape models associated with a cost value of the respectivecost values that satisfies a first threshold value, wherein theestimated shape model comprises a first order shape model, andrepeatedly performing the ICP loop and the ER loop until a cost valuegenerated from an iteration of the ER loop satisfies a second thresholdvalue to determine the pre-morbid shape of the anatomical object,wherein repeatedly performing the ICP loop and the ER loop comprisesreceiving, for the ICP loop, an order shape model generated by aprevious ER loop and an order shape generated by a previous ICP loop,generating, by the ICP loop, a current order shape based on the ordershape model and the order shape, receiving, for the ER loop, the currentorder shape and at least one of shape model or the order shape modelgenerated by the previous ER loop, generating a next set of plurality ofestimated shape models based on at least one of the shape model or theorder shape model generated by the previous ER loop, determiningrespective cost values for each of the second set of plurality ofestimated shape models based on the order shape of the current ordershape and respective second set of plurality of estimated shape models,and determining a current estimated shape model of the second set ofplurality of estimated shape models associated with a cost value of therespective cost values that satisfies the first threshold value, whereinthe current estimated shape model comprises a current order shape modelgenerated by the ER loop.

In one example, the disclosure describes a device for determining apre-morbid shape of an anatomical object of an orthopedic joint of apatient, the device comprising a memory configured to store a shapemodel and processing circuitry. The processing circuitry is configuredto receive an aligned shape and a shape model, perform an iterativeclosest point (ICP) loop, wherein to perform the ICP loop, theprocessing circuitry is configured to modify the aligned shape, comparethe modified aligned shape to the shape model, determine a cost valuebased on the comparison, and repeat the modifying, comparing, anddetermining until the cost value satisfies a threshold value to generatea first order shape, wherein the first order shape comprises themodified aligned shape associated with the cost value that satisfies thethreshold value, perform an elastic registration (ER) loop, wherein toperform the ER loop, the processing circuitry is configured to receivethe first order shape and the shape model, determine respective costvalues for each of a first set of plurality of estimated shape modelsbased on the first order shape and respective plurality of estimatedshape models, wherein the plurality of estimated shape models isgenerated based on the shape model, and determine a first estimatedshape model of the plurality of estimated shape models associated with acost value of the respective cost values that satisfies a firstthreshold value, wherein the estimated shape model comprises a firstorder shape model, and repeatedly perform the ICP loop and the ER loopuntil a cost value generated from an iteration of the ER loop satisfiesa second threshold value to determine the pre-morbid shape of theanatomical object, wherein to repeatedly perform the ICP loop and the ERloop, the processing circuitry is configured to receive, for the ICPloop, an order shape model generated by a previous ER loop and an ordershape generated by a previous ICP loop, generate, by the ICP loop, acurrent order shape based on the order shape model and the order shape,receive, for the ER loop, the current order shape and at least one ofshape model or the order shape model generated by the previous ER loop,generate a next set of plurality of estimated shape models based on atleast one of the shape model or the order shape model generated by theprevious ER loop, determine respective cost values for each of thesecond set of plurality of estimated shape models based on the ordershape of the current order shape and respective second set of pluralityof estimated shape models, and determine a current estimated shape modelof the second set of plurality of estimated shape models associated witha cost value of the respective cost values that satisfies the firstthreshold value, wherein the current estimated shape model comprises acurrent order shape model generated by the ER loop.

In one example, the disclosure describes a computer-readable storagemedium storing instructions thereon that when executed cause one or moreprocessors to receive an aligned shape and a shape model, perform aniterative closest point (ICP) loop, wherein the instructions that causethe one or more processors to perform the ICP loop comprise instructionsthat cause the one or more processors to modify the aligned shape,compare the modified aligned shape to the shape model, determine a costvalue based on the comparison, and repeat the modifying, comparing, anddetermining until the cost value satisfies a threshold value to generatea first order shape, wherein the first order shape comprises themodified aligned shape associated with the cost value that satisfies thethreshold value, perform an elastic registration (ER) loop, wherein theinstructions that cause the one or more processors to perform the ERloop comprise instructions that cause the one or more processors toreceive the first order shape and the shape model, determine respectivecost values for each of a first set of plurality of estimated shapemodels based on the first order shape and respective plurality ofestimated shape models, wherein the plurality of estimated shape modelsis generated based on the shape model, and determine a first estimatedshape model of the plurality of estimated shape models associated with acost value of the respective cost values that satisfies a firstthreshold value, wherein the estimated shape model comprises a firstorder shape model, and repeatedly perform the ICP loop and the ER loopuntil a cost value generated from an iteration of the ER loop satisfiesa second threshold value to determine a pre-morbid shape of ananatomical object, wherein the instructions that cause the one or moreprocessors to repeatedly perform the ICP loop and the ER loop compriseinstructions that cause the one or more processors to receive, for theICP loop, an order shape model generated by a previous ER loop and anorder shape generated by a previous ICP loop, generate, by the ICP loop,a current order shape based on the order shape model and the ordershape, receive, for the ER loop, the current order shape and at leastone of shape model or the order shape model generated by the previous ERloop, generate a next set of plurality of estimated shape models basedon at least one of the shape model or the order shape model generated bythe previous ER loop, determine respective cost values for each of thesecond set of plurality of estimated shape models based on the ordershape of the current order shape and respective second set of pluralityof estimated shape models, and determine a current estimated shape modelof the second set of plurality of estimated shape models associated witha cost value of the respective cost values that satisfies the firstthreshold value, wherein the current estimated shape model comprises acurrent order shape model generated by the ER loop.

In one example, the disclosure describes a system for determining apre-morbid shape of an anatomical object of an orthopedic joint of apatient, the system comprising means for receiving an aligned shape anda shape model, means for performing an iterative closest point (ICP)loop, wherein the means for performing the ICP loop comprises means formodifying the aligned shape, means for comparing the modified alignedshape to the shape model, means for determining a cost value based onthe comparison, and means for repeating the modifying, comparing, anddetermining until the cost value satisfies a threshold value to generatea first order shape, wherein the first order shape comprises themodified aligned shape associated with the cost value that satisfies thethreshold value, means for performing an elastic registration (ER) loop,wherein the means for performing the ER loop comprises means forreceiving the first order shape and the shape model, means fordetermining respective cost values for each of a first set of pluralityof estimated shape models based on the first order shape and respectiveplurality of estimated shape models, wherein the plurality of estimatedshape models is generated based on the shape model, and means fordetermining a first estimated shape model of the plurality of estimatedshape models associated with a cost value of the respective cost valuesthat satisfies a first threshold value, wherein the estimated shapemodel comprises a first order shape model, and means for repeatedlyperforming the ICP loop and the ER loop until a cost value generatedfrom an iteration of the ER loop satisfies a second threshold value todetermine the pre-morbid shape of the anatomical object, wherein themeans for repeatedly performing the ICP loop and the ER loop comprisesmeans for receiving, for the ICP loop, an order shape model generated bya previous ER loop and an order shape generated by a previous ICP loop,means for generating, by the ICP loop, a current order shape based onthe order shape model and the order shape, means for receiving, for theER loop, the current order shape and at least one of shape model or theorder shape model generated by the previous ER loop, means forgenerating a next set of plurality of estimated shape models based on atleast one of the shape model or the order shape model generated by theprevious ER loop, means for determining respective cost values for eachof the second set of plurality of estimated shape models based on theorder shape of the current order shape and respective second set ofplurality of estimated shape models, and means for determining a currentestimated shape model of the second set of plurality of estimated shapemodels associated with a cost value of the respective cost values thatsatisfies the first threshold value, wherein the current estimated shapemodel comprises a current order shape model generated by the ER loop.

In one example, the disclosure describes a method for determining apre-morbid shape of an anatomical object of an orthopedic joint of apatient, the method comprising determining a plane through theanatomical object from the image data, wherein the plane is a plane thatis substantially through a middle of the anatomical object, determininga normal of the plane, determining a transverse axis throughrepresentations of sagittal cuts through the anatomical object, whereinthe transverse axis is orthogonal to the normal, determining a patientcoordinate system based on the normal and the transverse axis,generating an initial aligned shape that initially aligns the anatomicalobject from the image data to a shape model, and generating informationindicative of the pre-morbid shape of the anatomical object based on theinitial aligned shape.

In one example, the disclosure describes a device for determining apre-morbid shape of an anatomical object of an orthopedic joint of apatient, the device comprising memory configured to store image data andprocessing circuitry. The processing circuitry is configured todetermine a plane through the anatomical object from the image data,wherein the plane is a plane that is substantially through a middle ofthe anatomical object, determine a normal of the plane, determine atransverse axis through representations of sagittal cuts through theanatomical object, wherein the transverse axis is orthogonal to thenormal, determine a patient coordinate system based on the normal andthe transverse axis, generate an initial aligned shape that initiallyaligns the anatomical object from the image data to a shape model, andgenerate information indicative of the pre-morbid shape of theanatomical object based on the initial aligned shape.

In one example, the disclosure describes a computer-readable storagemedium storing instructions that when executed cause one or moreprocessors to determine a plane through the anatomical object from theimage data, wherein the plane is a plane that is substantially through amiddle of the anatomical object, determine a normal of the plane,determine a transverse axis through representations of sagittal cutsthrough the anatomical object, wherein the transverse axis is orthogonalto the normal, determine a patient coordinate system based on the normaland the transverse axis, generate an initial aligned shape thatinitially aligns the anatomical object from the image data to a shapemodel, and generate information indicative of a pre-morbid shape of ananatomical object based on the initial aligned shape.

In one example, the disclosure describes a system for determining apre-morbid shape of an anatomical object of an orthopedic joint of apatient, the system comprising means for determining a plane through theanatomical object from the image data, wherein the plane is a plane thatis substantially through a middle of the anatomical object, means fordetermining a normal of the plane, means for determining a transverseaxis through representations of sagittal cuts through the anatomicalobject, wherein the transverse axis is orthogonal to the normal, meansfor determining a patient coordinate system based on the normal and thetransverse axis; means for generating an initial aligned shape thatinitially aligns the anatomical object from the image data to a shapemodel, and means for generating information indicative of the pre-morbidshape of the anatomical object based on the initial aligned shape.

The details of various examples of the disclosure are set forth in theaccompanying drawings and the description below. Various features,objects, and advantages will be apparent from the description, drawings,and claims.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram illustrating an example computing device thatmay be used to implement the techniques of this disclosure.

FIG. 2 is an illustration of a scapula having points of interest used todetermine a coordinate system of a patient.

FIGS. 3A and 3B are illustrations of a planar cut through a scapula fordetermining a coordinate system of a patient.

FIG. 4 is a conceptual diagram of a perspective view of a normal line toa plane through a scapula for determining a coordinate system of apatient.

FIG. 5 is a conceptual diagram of another perspective view of a normalline to a plane through a scapula for determining a coordinate system ofa patient.

FIG. 6 is a conceptual diagram illustrating a transverse axis through ascapula for determining a coordinate system of a patient.

FIGS. 7A and 7B are conceptual diagrams illustrating an example ofsagittal cuts through a scapula for determining the transverse axis ofFIG. 6.

FIGS. 8A-8C are conceptual diagrams illustrating results of sagittalcuts through scapula for determining the transverse axis of FIG. 6.

FIGS. 9A and 9B are conceptual diagrams illustrating another example ofsagittal cuts through a scapula for determining the transverse axis ofFIG. 6.

FIG. 10 is a conceptual diagram illustrating a transverse axis through ascapula and a normal line to a plane through the scapula for determininga coordinate system of a patient.

FIG. 11 is a conceptual diagram illustrating movement of a transverseaxis through a scapula and a normal line to a plane through the scapulato a central location of a glenoid for determining a coordinate systemof a patient.

FIG. 12 is a conceptual diagram illustrating an example of an initialalignment of a segmentation object to a shape model.

FIG. 13 is a conceptual diagram illustrating an example of anintermediate alignment of a segmentation object to a shape model.

FIG. 14 is a conceptual diagram illustrating an example for determiningdifference values for iterative closest point (ICP) algorithm.

FIGS. 15A and 15B are conceptual diagrams illustrating portions of aglenoid for determining parameters of a cost function used to determinea pre-morbid shape of anatomy of a patient.

FIG. 16 is a flowchart illustrating an example method of operation inaccordance with one or more example techniques described in thisdisclosure.

FIG. 17 is a flowchart illustrating an example method of operation inaccordance with one or more example techniques described in thisdisclosure.

FIG. 18 is a flowchart illustrating an example method of operation inaccordance with one or more example techniques described in thisdisclosure.

DETAILED DESCRIPTION

A patient may suffer from a disease (e.g., aliment) that causes damageto the patient anatomy, or the patient may suffer an injury that causesdamage to the patient anatomy. For shoulders, as an example of patientanatomy, a patient may suffer from primary glenoid humeralosteoarthritis (PGHOA), rotator cuff tear arthropathy (RCTA),instability, massive rotator cuff tear (HRCT), rheumatoid arthritis(RA), post-traumatic arthritis (PTA), osteoarthritis (OA), or acutefracture, as a few examples.

To address the disease or injury, a surgeon may perform a surgicalprocedure such as Reversed Arthroplasty (RA), Augmented ReverseArthroplasty (RA), Standard Total Shoulder Arthroplasty (TA), AugmentedTotal Shoulder Arthroplasty (TA), or Hemispherical shoulder surgery, asa few examples. There may be benefits for the surgeon to determine,prior to the surgery, characteristics (e.g., size, shape, and/orlocation) of the patient anatomy. For instance, determining thecharacteristics of the patient anatomy may aid in prosthetic selection,design and/or positioning, as well as planning of surgical steps toprepare a surface of the damaged bone to receive or interact with aprosthetic. With advance planning, the surgeon can determine, prior tosurgery, rather than during surgery, steps to prepare bone or tissue,tools that will be needed, sizes and shapes of the tools, the sizes andshapes or other characteristics of one or more prostheses that will beimplanted and the like.

As described above, pre-morbid characterization refers to characterizingthe patient anatomy as it existed prior to the patient suffering diseaseor injury. However, pre-morbid characterization of the anatomy isgenerally not available because the patient may not consult with adoctor or surgeon until after suffering the disease or injury.

In some cases, it may be possible to use one side of the patient (e.g.,shoulder on one side) as representative of the pre-morbidcharacterization of the other side (e.g., shoulder on other side).However, the disease could be bilateral, meaning that there is impact onboth sides. Also, the patient anatomy may not be symmetric (e.g.,shoulders are not symmetric) and may not reflect the pre-morbidcharacteristics of the contralateral side.

Pre-morbid anatomy, also called native anatomy, refers to the anatomyprior to the onset of a disease or the occurrence of an injury. Evenafter disease or injury, there may be portions of the anatomy that arehealthy and portions of the anatomy that are not healthy (e.g., diseasedor damaged). The diseased or damaged portions of the anatomy arereferred to as pathological anatomy, and the healthy portions of theanatomy are referred to as non-pathological anatomy.

This disclosure describes example techniques to determine arepresentation of a pre-morbid anatomical object (e.g., a predictor ofthe pre-morbid anatomical object) using statistical shape model (SSM),and particularly, determining a shape model representative of thepatient anatomical object with current patient anatomy in accordancewith a cost function. For example, the disclosure describes aligning asegmented shape representing the current patient anatomical objecthaving the pathological and non-pathological anatomy to a coordinatesystem of an initial shape model. The initial shape model is an exampleof the SSM. As described in more detail, to perform such alignment tothe coordinate system, a computing device may determine a coordinatesystem for the segmented shape even where not all image information ortoo much image information is available due to under- andover-segmentation.

After aligning the segmented shape to the coordinate system of theinitial shape model, the computing device may deform the shape modelthrough an iterative process to register the shape model to thesegmented shape. The registration may include adjusting the size andshape of the shape model to the current patient anatomical objects andadjusting a location of the shape model to align with the currentpatient anatomical objects (e.g., register in 3D the shape model to thecurrent patient anatomical objects). The result of the registration maybe a shape model that is an approximation of the pre-morbid size andshape of the patient anatomical object.

The segmented shape is aligned to the initial shape model, which is anexample of the SSM. For instance, a coordinate system of segmented shapeis aligned to the coordinate system of the initial shape model so thatthe segmented shape is defined in the same space as the initial shapemodel. The result of the aligning is an aligned shape. Then, the initialshape models is modified in an iterative manner, to generate a finalshape model that is a pre-morbid approximation of the anatomical object.For example, assume that the patient anatomical object includes aninjured or diseased glenoid (e.g., pathological glenoid). The initialshape model is an SSM of the anatomical object but with non-pathologicalglenoid. With the example techniques described in this disclosure, thefinal shape model is registered to the patient anatomical object (e.g.,so that the final shape model is approximately the same size and shapeas the patient anatomical object). In this example, the non-pathologicalglenoid of the final shape model is an approximation of the pre-morbidsize and shape of the patient glenoid.

The statistical shape model (SSM) may be a model generated fromdetermining a mean shape from participants in a study. For example,using patient demographic information and various measurements extractedfrom the segmented image data, a computing device may select or generatethe appropriate shape model for the patient. In some examples, the SSMmay be constant for all patients, rather than generating an appropriateshape model for a particular patient. The shape model may be representedas a point cloud or a function with parameters for generating a pointcloud.

As described above, a computing device may align the segmented shape(e.g., a representation of the current patient anatomical object) to theinitial shape model. To perform the alignment, the computing device maydetermine a coordinate system for the segmented shape. However, becausethe anatomical object includes pathological anatomy that is diseased ordamaged, it is possible that portions of the pathological anatomy, usedfor determining a coordinate system, are no longer present in thepatient. Also, registration (e.g., deformation of the shape model toregister the shape model to aligned shape) may be limited to comparisonof the shape model to the non-pathological anatomy.

Moreover, imaging techniques may not properly capture thenon-pathological anatomy. For instance, based on scans performed on thepatient, such as computed tomography (CT) scans or radiographs such asx-ray, MM, and ultrasound, a computing device may generate image data ofthe patient anatomy. In under-segmentation, it is possible that certainportions of the patient anatomy (e.g., scapula) are not fully captured,and there are missing portions (e.g., in this case, a resultingsegmented object does not include the entire actual anatomical object).This under-segmentation could be due to types of machines used to scanthe patient, noise in the scans, bone-to-bone contact, etc.

In some cases, the radiologist tries to minimize patient's exposure toirradiation and stops the scanner once the anatomical object of interestis reached. For instance, the radiologist may stop scanning the patientanatomy when the glenoid is reached. In such cases, image informationfor other anatomical objects may be lost (e.g., lose the inferior andmedial parts of the scapula).

In over-segmentation, it is possible that additional body parts arepresent in the scans that can impact the alignment (e.g., a resultingsegmented object includes more than the actual anatomical objects). Forinstance, the scan of the scapula is needed, but due toover-segmentation, additional bony parts like the clavicle or the ribsmay be included in the segmentation.

Non-pathological anatomy is desirable for aligning the segmented shapeto the initial shape model to generate the aligned shape and to performthe registration of a shape model to the aligned shape. However, thenon-pathological anatomy may not be available from the scans due tounder- or over-segmentation. This disclosure describes exampletechniques to generate the pre-morbid characterization even when thereis under- and/or over-segmentation of anatomical objects in image data.

As described above, a computing device may align the segmented shape(e.g., image data representing the current patient anatomical object) toa shape model to generate an aligned shape. In one or more examples, acomputing device may determine a patient coordinate system from thesegmented shape based on a best fit plane and transverse axis, asdescribed in more detail below, so that the computing device does notneed to rely on anatomical landmarks that may not be present in thescans due to under-segmentation or may not be discernible due toover-segmentation. With the determined patient coordinate system, acomputing device may align the segmented shape to the shape model togenerate an initial aligned shape (e.g., by performing transformationsto the segmented shape generated from the image data so that theanatomical objects are aligned with the shape model).

However, due to under- or over-segmentation, there may be misalignmentof the initial aligned shape relative to the actual anatomy of thepatient. For example, a segmented shape may exclude one or more portionsassociated with an actual, anatomic object, in the case ofunder-segmentation, or include one or more portions not associated withthe actual, anatomic object, in the case of over-segmentation. In one ormore examples, a computing device may modify parameters of the initialaligned shape (e.g., to modify the shape and/or position of the initialaligned shape), using techniques described in more detail below, togenerate an aligned shape. As one example, the computing device maymodify the parameters of the initial aligned shape such that the initialaligned shape rotates around two anatomical axes (e.g., the superioraxis and the axis perpendicular to the scapula's plane, which are two ofthe three axis in the 3D coordinate system). This may be because ofinsincerity about the computation of the transverse axis (e.g., thethird axis in the 3D coordinate system), as described in more detail.The aligned shape is substantially proximal to the anatomy of thepatient within the initial shape model coordinate system. In this case,substantially proximal refers to the aligned shape having approximatelythe same size (e.g., 3D volume) as the anatomical objects and having thesame orientation of the anatomical objects. The aligned shape may befairly close to be aligned to the segmented anatomical objects.

After generating the aligned shape, further updates, as described below,may be needed to generate a pre-morbid characterization of the patientanatomy (e.g., a graphical shape model that is a predictor of thepatient's anatomy prior to damage). Hence, the aligned shape may bereferred to as an intermediate aligned shape. For instance, thecomputing device may perform a multiple loop iterative process. Forexample, the computing device may be configured to perform an iterativeclosest point (ICP) algorithm. The initial input to the ICP algorithm isthe aligned shape and the initial shape model (e.g., the SSM). The ICPalgorithm deforms the aligned shape in an iterative process to registerthe aligned shape to the initial shape model (e.g., reshapes the alignedshape to generate a shape model that is approximately the same size andshape as the initial shape model). The example techniques for performingthe ICP algorithm are described in more detail below. The output of theICP algorithm is a first order shape.

The computing device may utilize the first order shape and the initialshape model (e.g., SSM) as an input for an elastic registrationalgorithm. The elastic registration algorithm is described in moredetail below, and generally includes generating a plurality of estimatedshape models based on the initial shape model (e.g., by deforming theinitial shape model). The computing device may select one of theestimated shape models as a first order shape model based on a costfunction value that relies upon distances and orientation between theestimated shape models and the first order shape, constraints onmedialization of anatomy, and parameter weighting. The result of theelastic registration algorithm is a first order shape model. The firstorder shape model may be similar to in size and shape, but not exact as,the first order shape.

These example operations may conclude one iteration of the pre-morbidcharacterization algorithm. To summarize, in the first iteration of thepre-morbid characterization, the computing device performed the ICPalgorithm. For the ICP algorithm, the computing device utilized thealigned shape and the initial shape model and deformed the aligned shapeto register to the aligned shape to generate a first order shape. Afterthe ICP algorithm, the computing device performed the elasticregistration algorithm. For the elastic registration algorithm, thecomputing device utilized the initial shape model to generate aplurality of estimated shape models and determined one of the estimatedshape models as a first order shape model based on distances andorientation between the estimated shape models and the first ordershape, constraints on medialization of anatomy, and parameter weightingas the conclusion of a first iteration of the pre-morbidcharacterization algorithm.

Then, the computing device may perform a second iteration of thepre-morbid characterization algorithm. In the second iteration, thecomputing device may again perform the ICP algorithm. In this iteration,the input to the ICP algorithm is the first order shape, as previouslydetermined, and the first order shape model, as previously determined.The computing device may deform the first order shape to register thefirst order shape to the first order shape model using the ICP algorithmto generate a second order shape (e.g., where the second order shape isapproximately the same, in size and shape, as the first order shapemodel).

The computing device may then perform the elastic registration algorithmusing the initial shape model or the first order shape model, aspreviously determined, and the second order shape, as now determinedbased on the ICP algorithm. For example, the computing device maydetermine a plurality of estimated shape models based on the initialshape model or the first order shape model. The computing device maydetermine one of the estimated shape models as a second order shapemodel based on a cost function value that relies upon distances andorientation between the estimated shape models and the second ordershape, constraints on medialization of anatomy, and parameter weighting.

This may conclude a second iteration of the pre-morbid characterizationalgorithm. The iterations of the pre-morbid characterization algorithmkeep repeating with next order shape models until the overall costfunction value used for the elastic registration algorithm satisfies athreshold value (e.g., less than threshold value including example wherecost function value is minimized). The result is a final shape modelthat is approximately the same size and shape as the current patientanatomical object prior to the disease or injury.

The computing device may output a graphical representation of the finalshape model as the information indicative of the pre-morbidcharacterization of the anatomical object. As another example, thecomputing device may output length and shape information of thedetermined aligned shape model as information indicative of thepre-morbid characterization of the anatomy. For instance, the computingdevice may output for display information for final shape model and itsanatomical measurements (e.g., version and inclination) displayed on topof the final shape model, as an example of the pre-morbid shape of theanatomical object that is now diseased or injured (e.g., pathological).

The surgeon may then use the pre-morbid characterization to plan thesurgery. For example, with the pre-morbid shape, the surgeon maydetermine which implant to use and how to perform the implant surgery sothat the result of the surgery is that the patient's experience (e.g.,in ability of movement) is similar to before the patient experiencedinjury or disease.

FIG. 1 is a block diagram illustrating an example computing device thatmay be used to implement the techniques of this disclosure. FIG. 1illustrates device 100, which is an example of a computing deviceconfigured to perform one or more example techniques described in thisdisclosure.

Device 100 may include various types of computing devices, such asserver computers, personal computers, smartphones, laptop computers, andother types of computing devices. Device 100 includes processingcircuitry 102, memory 104, and display 110. Display 110 is optional,such as in examples where device 100 is a server computer.

Examples of processing circuitry 102 include one or moremicroprocessors, digital signal processors (DSPs), application specificintegrated circuits (ASICs), field programmable gate arrays (FPGAs),discrete logic, software, hardware, firmware or any combinationsthereof. In general, processing circuitry 102 may be implemented asfixed-function circuits, programmable circuits, or a combinationthereof. Fixed-function circuits refer to circuits that provideparticular functionality and are preset on the operations that can beperformed. Programmable circuits refer to circuits that can programmedto perform various tasks and provide flexible functionality in theoperations that can be performed. For instance, programmable circuitsmay execute software or firmware that cause the programmable circuits tooperate in the manner defined by instructions of the software orfirmware. Fixed-function circuits may execute software instructions(e.g., to receive parameters or output parameters), but the types ofoperations that the fixed-function circuits perform are generallyimmutable. In some examples, the one or more of the units may bedistinct circuit blocks (fixed-function or programmable), and in someexamples, the one or more units may be integrated circuits.

Processing circuitry 102 may include arithmetic logic units (ALUs),elementary function units (EFUs), digital circuits, analog circuits,and/or programmable cores, formed from programmable circuits. Inexamples where the operations of processing circuitry 102 are performedusing software executed by the programmable circuits, memory 104 maystore the object code of the software that processing circuitry 102receives and executes, or another memory within processing circuitry 102(not shown) may store such instructions. Examples of the softwareinclude software designed for surgical planning.

Memory 104 may be formed by any of a variety of memory devices, such asdynamic random access memory (DRAM), including synchronous DRAM (SDRAM),magnetoresistive RAM (MRAM), resistive RAM (RRAM), or other types ofmemory devices. Examples of display 110 include a liquid crystal display(LCD), a plasma display, an organic light emitting diode (OLED) display,or another type of display device.

Device 100 may include communication interface 112 that allows device100 to output data and instructions to and receive data and instructionsfrom visualization device 116 via network 114. For example, afterdetermining a pre-morbid characteristic of the anatomical object, usingtechniques described in this disclosure, communication interface 112 mayoutput information of the pre-morbid characteristic to visualizationdevice 116 via network 114. A surgeon may then view a graphicalrepresentation of the pre-morbid anatomical object with visualizationdevice 116 (e.g., possibly with the pre-morbid anatomical objectoverlaid on top of image of the injured or diseased anatomical object).In some examples, viewing the pre-morbid anatomical object overlaid ontop of image of the injured or diseased anatomical object gives thesurgeon understanding of how to perform implantation so that the resultof the implantation mimics the pre-morbid shape of the anatomicalobject.

Communication interface 112 may be hardware circuitry that enablesdevice 100 to communicate (e.g., wirelessly or using wires) to othercomputing systems and devices, such as visualization device 116. Network114 may include various types of communication networks including one ormore wide-area networks, such as the Internet, local area networks, andso on. In some examples, network 114 may include wired and/or wirelesscommunication links.

Visualization device 116 may utilize various visualization techniques todisplay image content to a surgeon. Visualization device 116 may be amixed reality (MR) visualization device, virtual reality (VR)visualization device, holographic projector, or other device forpresenting extended reality (XR) visualizations. In some examples,visualization device 116 may be a Microsoft HOLOLENS™ headset, availablefrom Microsoft Corporation, of Redmond, Wash., USA, or a similar device,such as, for example, a similar MR visualization device that includeswaveguides. The HOLOLENS™ device can be used to present 3D virtualobjects via holographic lenses, or waveguides, while permitting a userto view actual objects in a real-world scene, i.e., in a real-worldenvironment, through the holographic lenses.

Visualization device 1116 may utilize visualization tools that areavailable to utilize patient image data to generate three-dimensionalmodels of bone contours to facilitate preoperative planning for jointrepairs and replacements. These tools allow surgeons to design and/orselect surgical guides and implant components that closely match thepatient's anatomy. These tools can improve surgical outcomes bycustomizing a surgical plan for each patient. An example of such avisualization tool for shoulder repairs is the BLUEPRINT™ systemavailable from Wright Medical Technology, Inc. The BLUEPRINT™ systemprovides the surgeon with two-dimensional planar views of the bonerepair region as well as a three-dimensional virtual model of the repairregion. The surgeon can use the BLUEPRINT™ system to select, design ormodify appropriate implant components, determine how best to positionand orient the implant components and how to shape the surface of thebone to receive the components, and design, select or modify surgicalguide tool(s) or instruments to carry out the surgical plan. Theinformation generated by the BLUEPRINT™ system is compiled in apreoperative surgical plan for the patient that is stored in a databaseat an appropriate location (e.g., on a server in a wide area network, alocal area network, or a global network) where it can be accessed by thesurgeon or other care provider, including before and during the actualsurgery.

As illustrated, memory 104 stores data representative of a shape model106 and data representative of anatomy scans 108. Anatomy scans 108 areexamples of computed tomography (CT) scans of a patient, e.g., asrepresented by CT scan image data. Anatomy scans 108 may be sufficientto reconstruct a three-dimensional (3D) representation of the anatomy ofthe patient, such as the scapula and glenoid as examples of patientanatomy (e.g., by automated segmentation of the CT image data to yieldsegmented anatomical objects). One example way of automated segmentationis described in U.S. Pat. No. 8,971,606. There may be various other waysin which to perform automated segmentation, and the techniques are notlimited to automated segmentation using techniques described in U.S.Pat. No. 8,971,606. As one example, segmentation of the CT image data toyield segmented objects includes comparisons of voxel intensity in theimage data to determine bony anatomy and comparisons to estimated sizesof bony anatomy to determine a segmented object. Moreover, the exampletechniques may be performed with non-automated segmentation techniques,where a medical professional evaluates the CT image data to segmentanatomical objects, or some combination of automation and user input forsegmenting anatomical objects.

In one or more examples, anatomy scans 108 may be scans of anatomy thatis pathological due to injury or disease. The patient may have aninjured shoulder requiring surgery, and for the surgery or possibly aspart of the diagnosis, the surgeon may have requested anatomy scans 108to plan the surgery. A computing device (like device 100 or some otherdevice) may generate segmentations of the patient anatomy so that thesurgeon can view anatomical objects and the size, shape, andinterconnection of the objects with other anatomy of the patient anatomyneeding surgery.

In one or more examples, processing circuitry 102 may utilize image dataof scans 108 to compare (e.g., size, shape, orientation, etc.) against astatistical shape model (SSM) as a way to determine characteristics ofthe patient anatomy prior to the patient suffering the injury ordisease. In some examples, processing circuitry 102 may compare 3D pointdata of non-pathological points of anatomical objects of patient anatomyin the image data of scans 108 to points in SSM.

For instance, scans 108 provide the surgeon with a view of the currentcharacteristics of the damaged or diseased anatomy. To reconstruct theanatomy (i.e., to represent a pre-morbid state), the surgeon may find itbeneficial to have a model indicating the characteristics of the anatomyprior to the injury or disease. For instance, the model may be apredictor of the anatomy of the patient prior to damage or disease,which allows the surgeon to plan the surgery. For example, withpre-morbid model, the surgeon may determine the extent of the injury orprogression of the disease, which can assist the surgeon in determiningtype of implant, location of implant, or other corrective actions to betaken. However, it may be likely the patient did not consult with thesurgeon until after the injury occurred or disease progressed, andtherefore, a model of the patient anatomy prior to the injury or disease(e.g., pre-morbid or native anatomy) may not be available. Using the SSMas a way to model the pre-morbid anatomy allows the surgeon to determinecharacteristics of the pre-morbid patient anatomy.

SSMs are a compact tool to represent shape variations among a populationof samples (database). For example, a clinician or researcher maygenerate a database of image scans, such as CT image data, of differentpeople representative of the population as a whole who do not sufferfrom damaged or diseased glenoid, humerus, or neighboring bones. Theclinician or researcher may determine a mean shape for the patientanatomy from the shapes in the database. In FIG. 1, memory 104 storesinformation indicative of shape model 106. As one example, shape model106 represents a mean shape for the anatomical object (e.g., glenoid,humeral head, etc.) of patient anatomy from the shapes in the database.Other examples of shape model 106 are possible, such as a mode or medianof the shapes in the database. A weighted average is another possibleexample of shape model 106. Shape model 106 may be a surface or volumeof points (e.g., a graphical surface or a volume of points that define a3D model), and the information indicative of mean shape may becoordinate values for vertices of primitives that interconnect to formthe surface. Techniques to generate an SSM like shape model 106 andvalues associated with generating shape model 106 can be found invarious literature such as from:http://www.cmlab.csie.ntu.edu.tw/˜cyy/learning/papers/PCA_ASM.pdf datedAug. 22, 2006. Other ways in which to generate shape model 106 arepossible.

With shape model 106, processing circuitry 102 may represent anatomyshape variations by adding points or values of shape model 106 to acovariance matrix. For example, the SSM can be interpreted as a linearequation:

s _(i) =s′+Σ _(i) b _(i)√{square root over (λ_(i))}×v _(i).

In the above equation, s′ is shape model 106 (e.g., point cloud of meanshape as one example, where point cloud defines coordinates of pointswithin shape model 106, such as vertices of primitives that form shapemodel 106). In the equation, λ_(i) is the eigenvalues and v_(i) is theeigenvectors of the covariance matrix respectively (also called modes ofvariations). The covariance matrix represents the variance in a dataset.The element in the i, j position is the co-variance between the i-th andj-th elements of a dataset array.

SSM stands for constructing the covariance matrix of the database thenperforming “singular value decomposition” which extracts a matrix ofprincipal vectors (also called eigenvectors) and another diagonal matrixof positive values (called eigenvalues). Eigenvectors (v_(i) in theequation) are new coordinate system bases of the database. Eigenvalues(λ_(i) the equation) represent the variance around the eigenvectors(v_(i)). Together eigenvectors and eigenvalues may reflect the amount ofvariation around the corresponding axis.

This mathematical equation allows processing circuitry 102 to create aninfinite number of instances of s_(j) (e.g., different variations of theshape model) by simply changing the weights b_(i) of the covariancematrix. For instance, to generate a new shape model, processingcircuitry may determine a value of and determine a new value of s_(i).In the above example, λ_(i) and v_(i) and s′ are all known based on themanner in which s′ was generated (e.g., based on the manner in whichshape model 106 was generated). By selecting different values of b_(i),processing circuitry 102 may determine different instances of a shapemodel (e.g., different s_(i) which are different variations of the shapemodel 106).

The shape model(s) may represent what an anatomical object should looklike for a patient. As described in more detail, processing circuitry102 may compare points (e.g., in the 3D cloud of points) of the shapemodel of the anatomical object with anatomical points represented in theimage data of scans 108, as anatomical points of the anatomical objectthat are not impacted or minimally impacted by the injury or disease(e.g., non-pathological points). Based on the comparison, processingcircuitry 102 may determine a pre-morbid characterization of theanatomical object.

As an example, assume that the surgeon would like to determine thepre-morbid characteristics of the glenoid cavity for shoulder surgery.There is a correlation between the shape of the glenoid cavity and thebony zone around it, such as the medical glenoid vault, the acromion,and the coracoid. Shape model 106 may be the mean shape of the scapulathat includes the glenoid cavity. Assume that in the patient the glenoidcavity is pathological (e.g., diseased or damaged).

In accordance with example techniques described in this disclosure,processing circuitry 102 may determine the instance of “s” (e.g., shapemodel of scapula with glenoid cavity) that best matches thenon-pathological anatomy of the anatomical object of the patient (e.g.,non-pathological portions of the scapula in scans 108). The glenoidcavity, in the instance of “s,” that best matches the non-pathologicalanatomy (referred to as s* and represented by a point cloud similar tothe shape model) may be indicative of the pre-morbid characterization ofthe pathological glenoid cavity.

Processing circuitry 102 may determine the instance of s* (e.g., shapemodel of scapula with glenoid cavity that best matches thenon-pathological portions of the patient's scapula). Thenon-pathological portions may be portions of the anatomical object withminimal to no impact from the disease or injury, where the anatomicalobject and its surrounding anatomy are taken from the segmentationperformed by scans 108 to segment out the anatomical object.

In some examples, to determine pre-morbid characterization of aparticular anatomical object, anatomy beyond the anatomical object maybe needed to align the shape model. For instance, to determinepre-morbid characterization of the glenoid, anatomy of the scapula maybe needed to align the shape model. Then, the glenoid of the shape modelrepresents the pre-morbid characterization of the patient's glenoid.Hence, the shape model may not be limited to modeling just theanatomical object of interest (e.g., glenoid) but may include additionalanatomical objects.

Processing circuitry 102 may perform the following example operations:(1) initially align the segmented anatomical object from image data ofscans 108 to a coordinate system of shape model 106 to generate aninitial aligned shape; (2) compensate for errors in the initialalignment due to under and over segmentation, where under- andover-segmentation are due to imperfections in generating scans 108, togenerate an aligned shape (also called intermediate aligned shape); and(3) perform iterative operations that includes iterative closest point(ICP) operations and elastic registration to determine the instance ofs* (i.e., the instance of s′ that most closely matches the patientanatomy as identified by the segmentation object). Example techniques toperform these operations are described in more detail below.

Accordingly, there may be a few technical problems with generating thepre-morbid characterization of the patient anatomy. One issue may bethat due to under- or over-segmentation the image data needed from scans108 is not available or distorted creating a challenge to align thesegmented object to shape model 106. Another issue may be that oncethere is alignment to shape model 106, registration of shape model 106to the segmented object may be poor, resulting in poor pre-morbidcharacterization.

This disclosure describes example techniques that allow alignment of thesegmented object to shape model 106 even in situations where there isunder- or over-segmentation. This disclosure also describes exampletechniques to register shape model 106 to the segmented object (e.g., inmultiple level iterative processes that uses ICP and elasticregistration). The example techniques described in this disclosure maybe use separately or together. For instance, in one example, processingcircuitry 102 may be configured to perform alignment of the segmentedobject to shape model 106 utilizing example techniques described indisclosure but perform registration of shape model 106 to the segmentedobject using some other techniques. In one example, processing circuitry102 may utilize some other technique to perform alignment of thesegmented object to shape model 106 but perform registration of shapemodel 106 to the segmented object using one or more example techniquesdescribed in this disclosure. In some examples, processing circuitry 102may perform the example alignment and registration techniques describedin this disclosure.

As described above, processing circuitry 102 may align the segmentedobject (e.g., as segmented using example techniques such as voxelintensity comparisons) to shape model 106. In this disclosure, thealignment refers to changes to the coordinate system of the segmentedobject so that the segmented object is in same coordinate system asshape model 106. As also described above, one example of shape model 106is a shape model of the anatomy of the scapula with glenoid cavity,where the glenoid cavity is the injured or diseased anatomical object.For instance, shape model 106 is defined in its own coordinate systemand may be different than the patient coordinate system (e.g.,coordinate system to define the point cloud of 3D points in scans 108).The patient coordinate system is the coordinate system used to definepoints within the anatomy of the patient in scans 108 that includesnon-pathological points and pathological points. The non-pathologicalpoints refer to the points in scans 108 for non-pathological anatomy,and the pathological points refer to points in scans 108 forpathological anatomy.

There may be various ways in which to determine pathological andnon-pathological points. As one example, the surgeon may review theimage data of scans 108 to identify pathological and non-pathologicalpoints. As another example, the surgeon may review a graphicalrepresentation of the segmented object to identify pathological andnon-pathological points. As another example, there may be an assumptionthat certain anatomical points are rarely injured or diseased and arepresent in image data of scans 108. For instance, the medical glenoidvault, the acromion, and the coracoid, are a few examples. Additionalexamples include trigonum scapulae and angulus inferior. However, one ormore both trigonum scapulae and angulus inferior may not be present ordistorted in the image data of scans 108 due to the over- andunder-segmentation.

In one or more examples, processing circuitry 102 may determine apatient coordinate system, which is the coordinate system recorded forthe CT scan data of scans 108. Shape model 106 may be defined in its owncoordinate system. Processing circuitry 102 may determine the coordinatesystem of shape model 106 based on the metadata stored with shape model106, where the metadata was generated as part of determining the mean ofthe shapes in the database. Processing circuitry 102 may determine atransformation matrix based on the patient coordinate system and thecoordinate system of shape model 106. The transformation matrix is a wayby which processing circuitry 102 transforms the segmented object (e.g.,points in the 3D volume of points) into the coordinate system of shapemodel 106. For example, points in the 3D volume of points of thesegmented object may be defined with (x, y, z) coordinate values. Theresult of the transformation may be coordinates (x′, y′, z′) coordinatevalues that are aligned to the coordinate system of shape model 106.Processing circuitry 102 calculates the transformation matrix through aclose-form equation.

There are multiple ways to determine the transformation matrix. As oneexample, the coordinate system may be c=(x,y,z,o), where x, y and z arethe orthogonal basis 3D vectors and o is the origin (c is a 4×4homogeneous matrix with the last raw is (0,0,0,1)). The new coordinatesystem to which the segmented object is to be transformed isC=(X,Y,Z,O). In this example, the transformation matrix is then:T=c{circumflex over ( )}−1×C.

Accordingly, processing circuitry 102 may determine the patientcoordinate system. FIGS. 2 to 8 describe example ways in whichprocessing circuitry 102 determines the patient coordinate system. Asdescribed in more detail, even after determining the patient coordinatesystem, further adjustment to shape model 106 may be needed to properlyalign the segmented object (e.g., patient anatomy) to shape model 106.For instance, because of over- or under-segmentation, missing ordistorted image data cannot be used to determine the patient coordinatesystem. Therefore, processing circuitry 102 utilizes image data that isavailable to perform an initial alignment, but then may perform furtheroperations to fully align the segmented object to shape model 106.

FIG. 2 is an illustration of a scapula having points of interest used todetermine coordinate system of a patient. For instance, FIG. 2illustrates scapula 118 having glenoid center 120, trigonum scapulae122, and angulus inferior 124. Some techniques utilize glenoid center120, trigonum scapulae 122, and angulus inferior 124 to determine thepatient coordinate system. For instance, glenoid center 120, trigonumscapulae 122, and angulus inferior 126 may be considered as forming atriangle, and processing circuitry 102 may determine a center point(e.g., in 3D) of the triangle as the origin of the patient coordinatesystem.

However, such techniques may not be available in cases of over- andunder-segmentation. As one example, in under-segmentation, scans 108 maybe inferiorly and/or superiorly and/or medially truncated and trigonumscapulae 122 and angulus inferior 124 may not be present in thesegmented objects extracted from the image data of scans 108. Therefore,processing circuitry 102 may not be able to utilize all three of glenoidcenter 120, trigonum scapulae 122, and angulus inferior 124 for purposesof determining patient coordinate system.

In one or more examples, where specific landmarks (e.g., glenoid center120, trigonum scapulae 122, and angulus inferior 124) are not availableas segmented anatomical objects in the image data of scans 108,processing circuitry 102 may define the patient coordinate system basedon the scapula normal (e.g., a vector normal to scapula 118) and atransverse axis based on the 3D information of image data of scans 108.As described in more detail, processing circuitry 102 may determine thescapula normal based on the normal of the best fit plane to the body ofscapula 118. Processing circuitry 102 may determine the transverse axisby fitting a line through the spongious region that lies between thesupraspinatus fossa, the spine, and the scapula body. Using thespongious region, processing circuitry 102 may define a Cartesian (e.g.,x, y, z) coordinate system (although other coordinate systems arepossible). The origin of the coordinate system may be glenoid center120; although other origins are possible.

In this manner, processing circuitry 102 may determine a coordinatesystem for the patient based on anatomical objects that are present inthe image data of scans 108, even where there is over- orunder-segmentation. Based on the coordinate system, processing circuitry102 may align the segmentation objects to the coordinate system of shapemodel 106 (e.g., initial SSM) and iteratively deform shape model 106 toregister a shape model (e.g., a deformed version of shape model 106) tothe patient segmentation object to determine a pre-morbidcharacterization.

FIGS. 3A and 3B are illustrations of a planar cut through a scapula fordetermining a patient coordinate system that may not rely uponanatomical objects whose image data is unavailable due to over- orunder-segmentation. For instance, unlike example of FIG. 2 that reliedupon glenoid center 120, trigonum scapulae 122, and angulus inferior124, which may not be available due to under- or over-segmentation, theexample techniques illustrated with respect to FIGS. 3A and 3B may notrely on anatomical objects that are unavailable due to under- orover-segmentation.

As illustrated in FIG. 3A, one of scans 108 may be a scan of an axialcut through scapula 118, which shows scapula portion 126. FIG. 3B is atop view of scapula portion 126 of FIG. 3A through scapula 118.

FIG. 3B illustrates a plurality of dots, representing an intersectingplane through portion 136, that go through scapula portion 126. In oneor more examples, processing circuitry 102 may determine a plane thatintersects through scapula portion 126. The intersection of the planethrough portion 126 is shown with the dots. For example, FIG. 3Billustrates line 128. Line 128 intersects a majority of the dots inscapula portion 126.

The dots in scapula portion 126 may be the “skeleton” of the surroundingcontour. The skeleton is dots through the contour that are each the samedistance to their respective nearest boundary. Although the skeleton isdescribed, in some examples, the dots in scapula portion 126 may becenter points, as another example.

Processing circuitry 102 may determine the image data that forms portion126. Processing circuitry 102 may determine dots of portion 126 (e.g.,skeleton dots or center dots as two non-limiting examples), asillustrated. Processing circuitry 102 may determine a plane that extendsup from line 128 toward the glenoid and extends downward from line 128toward the angulus inferior.

For example, although FIG. 3A illustrates one example axial cut,processing circuitry 102 may determine a plurality of axial cuts, anddetermine the points through the axial cuts, similar to FIG. 3B. Theresult may be a 2D points for each axial cut, and processing circuitry102 may determine a line, similar to like 128, through each of the axialcuts. Processing circuitry 102 may determine a plane that extendsthrough the lines for each axial cut through scapula 118. This plane isthrough scapula 118 and is illustrated in FIG. 4.

FIG. 4 is a conceptual diagram of a perspective view of a normal line toa plane, as determined with the example illustrated in FIGS. 3A and 3B,through a scapula for determining a coordinate system of a patient. Forinstance, FIG. 4 illustrates plane 130. Plane 130 intersects line 128illustrated in FIG. 3B. Plane 130 may be considered as the best fitplane to the body of scapula 118. Processing circuitry 102 may determinevector 132 that is normal to plane 130. In one or more examples, vector132 may form one axis (e.g., x-axis) of the patient coordinate system.Techniques to determine the other axes is described in more detailbelow.

FIG. 5 is a conceptual diagram of another perspective view of theexample of FIG. 4 such as another perspective view of a normal line to aplane through a scapula for determining a coordinate system of apatient. FIG. 5 is similar to FIG. 4 but from a front perspective ratherthan the side perspective of FIG. 4. For example, FIG. 5 illustratesscapula 118 of the patient with the best fit plane 130 and the normalvector 132.

In this manner, processing circuitry 102 may determine a first axis ofthe patient coordinate system that is normal to scapula 118. Processingcircuitry 102 may determine a second axis of the patient coordinatesystem as an axis that is transverse through scapula 118.

FIG. 6 is a conceptual diagram illustrating a transverse axis through ascapula for determining a coordinate system of a patient. For instance,FIG. 6 illustrates example to determine an axis, in addition to the onedetermined in FIGS. 4 and 5, for aligning shape model 106 to coordinatesystem of the image data of scans 108.

FIG. 6 illustrates transverse axis 134. Processing circuitry 102 maydetermine transverse axis 134 as a line that fits through the spongiousregion that lies between the supraspinatus fossa, the spine, and thescapula body. The example techniques to determine transverse axis 134 isdescribed with respect to FIGS. 7A, 7B, FIGS. 8A-8C, and FIGS. 9A and9B, and. Processing circuitry 102 may determine plurality of sagittalcuts through the scapula based on the image data of scan 108 asillustrated in FIGS. 7A and 7B. For instance, FIGS. 7A and 7B aredifferent perspectives of sagittal cuts through scapula based on axis133A. Processing circuitry 102 may utilize axis 133A based on anapproximation of the spongious region that lies between supraspinatusfossa, the spine, and the scapula body, and may be pre-programmed withthe estimated axis.

FIGS. 8A-8C illustrate the result of one of the sagittal cuts of theFIGS. 7A and 7B. For instance, the sagittal cuts from a “Y” shape, asillustrated in FIG. 8A. Processing circuitry 102 may determine askeleton line through the Y shape, as illustrated in FIG. 8B. Forinstance, processing circuitry 102 may determine dots that areequidistant to nearest border through the Y shape and interconnect thedots to form the line through Y shape as shown in FIG. 8B. Again, ratherthan skeleton, other points may be used like center points. Processingcircuitry 102 may determine an intersection of the lines through theskeleton, as illustrated by intersection point 135. For instance,intersection point 135 may be common to all of the lines that togetherform the Y shape.

Processing circuitry 102 may repeat these operations for each of the Yshapes in each of the sagittal cuts, and determine respectiveintersection points, like intersection point 135. Processing circuitry102 may determine a line that that intersects the plurality of therespective intersection points to determine an initial transverse axis133B illustrated in FIGS. 9A and 9B.

Processing circuitry 102 may determine sagittal cuts through the scapulausing the initial transverse axis 133B. For instance, FIGS. 9A and 9Bare different perspectives of sagittal cuts through scapula based onaxis 133B. Processing circuitry 102 may repeat the operations describedwith respect to FIGS. 8A-8C to determine a plurality of intersectionpoints for the sagittal cuts shown in FIGS. 9A and 9B. For example,similar to FIGS. 8A-8C, based on the sagittal cuts using axis 133B, eachsagittal cut may form Y shapes, similar to FIG. 8A. Processing circuitry102 may determine a skeleton line through the Y shapes, similar to FIG.8B, and determine intersection points similar to FIG. 8C. Processingcircuitry 102 may repeat these operations for each of the Y shapes ineach of the sagittal cuts, and determine respective intersection points,similar to the description above for FIGS. 8A-8C. Processing circuitry102 may determine a line that that intersects the plurality of therespective intersection points to determine transverse axis 134illustrated in FIG. 6.

FIG. 10 is a conceptual diagram illustrating a transverse axis of FIG. 6through a scapula and a normal line of FIGS. 4 and 5 to a plane throughthe scapula for determining a coordinate system of a patient. Forexample, FIG. 10 illustrates scapula 118 and glenoid center 120. FIG. 10also illustrates vector 132 that is normal to plane 130 and illustratestransverse axis 134.

For example, as described above, an initial step for pre-morbidcharacterization is to determine a coordinate axis with which thesegmented objects are aligned to shape model 106. With the exampletechniques described above, processing circuitry 102 may determine thex-axis (e.g., vector 132) and the z-axis (e.g., transverse axis 134).Processing circuitry 102 may further determine the y-axis using thebelow techniques. Once process circuitry 102 determines the coordinatesystem to represent and define location of anatomical objects determinedfrom the segmentation of the image data of scans 108, processingcircuitry 102 may be able to align the segmented object to thecoordinate system of shape model 106.

FIG. 11 is a conceptual diagram illustrating movement (or extension) ofa transverse axis through a scapula and a normal line to a plane throughthe scapula to a central location of a glenoid for determining acoordinate system of a patient. For instance, FIG. 8 illustrates thepatient coordinate system centered around glenoid center 120. Asillustrated, vector 132, as determined above, forms the x-axis of thepatient coordinate system, transverse axis 134 forms the z-axis of thepatient coordinate system, and axis 136 forms the y-axis of the patientcoordinate system.

Processing circuitry 102 may determine a glenoid center based on aplurality of 2D and 3D operations. For example, processing circuitry 102may determine a barycenter of the glenoid cavity and project thebarycenter back to the glenoid cavity surface to determine glenoidcenter 120.

Processing circuitry 102 may then determine y-axis 136 based on x-axis132, and z-axis 134. For example, processing circuitry 102 may determiney′=z*x, where * is the vector product. The y′ is perpendicular to theplane defined by the x-axis 132 and the z-axis 134, but x-axis 132 andz-axis 134 need not necessarily be perfectly orthogonal. Accordingly,processing circuitry 102 may replace z-axis 134 by Z=x*y′ or x-axis 132by X=y′ * z to have an orthogonal system (x, y′, Z) or (X, y′, z). Insome examples, processing circuitry 102 may utilize Z=x*y′ because thecomputation of x-axis 132 (e.g., the scapula normal) is more robust thanthe computation of z-axis 134 (e.g., transverse axis).

In this manner, processing circuitry 102 may determine the patientcoordinate system. In some examples, such as those described above,processing circuitry 102 may determine the patient coordinate systemwithout relying upon specific landmarks such as trigonum scapulae 122and angulus inferior 124 that may not be present in segmentation ofanatomical objects from the image data of scans 108 due to over or undersegmentation. In particular, the example technique determine x, y, andz-axis without relying on specific anatomical objects, but rather,determine the x, y, and z-axis based on scapula 118 itself, which shouldbe present in the image data of scans 108, whereas trigonum scapulae 122and angulus inferior 124 may not be present in the image data of scans108 due to under- or over-segmentation.

After determining the patient coordinate system, processing circuitry102 may determine the transformation matrix to align the patientcoordinate system to shape model 106. As described above, one exampleway to determine the transformation matrix is using the coordinatesystem where c=(x,y,z,o), and where x, y and z are the orthogonal basis3D vectors and o is the origin (c is a 4×4 homogeneous matrix with thelast raw is (0,0,0,1)). The new coordinate system to which the segmentedobject is to be transformed is C=(X,Y,Z,O). In this example, thetransformation matrix is then: T=c{circumflex over ( )}−1×C

Processing circuitry 102 may multiply the coordinates that define thesegmentation object (e.g., where the coordinates are determined from theaxes utilizing techniques described above) based on the image data fromscans 108 with the transformation matrix to align the segmentationobjects to shape model 106 (e.g., the SSM retrieved from memory 104).The result of this alignment may be an initial shape. For example, FIG.12 illustrates initial aligned shape 138 that is aligned with shapemodel 106. Initial aligned shape 138 is shown as superimposed on shapemodel 106, in FIG. 12. Initial aligned shape 138 is generated based onthe image data of scans 108 where certain portions of the anatomy may bemissing (e.g., due to under-segmentation) or distorted (e.g., due toover-segmentation). For instance, initial aligned shape 138 may begenerally positioned such that it has the same orientation on the x-,y-, and z-axis as shape model 106.

However, following transformation, initial aligned shape 138 may not beas closely aligned with shape model 106. In case the scapula isover-truncated inferiorly and/or medially (which may not be known but isthe case in initial shape 138), there could be computational errors indetermining the scapula body normal (e.g., vector 132) and thetransverse axis 134. These computational errors may lead to misalignmentbetween the shape model 106 and the patient anatomy (e.g., scapula 118),and therefore, initial aligned shape 138 may not be as closely alignedwith shape model 106 as desirable. For example, as can be seen from FIG.12, initial aligned shape 138 is rotated along z-axis (e.g., transverseaxis) 134.

In one or more examples, because it may be unknown whether there ismisalignment from over-truncated scapular 118, processing circuitry 102may modify parameters of initial shape 138 to generate an aligned shape.The aligned shape is substantially proximal (e.g., in location, size,and orientation) to shape model 106. As one example, to modifyparameters, processing circuitry 102 may iteratively adjust coordinatesof initial aligned shape 138 so that the initial aligned shape modelrotates along the z-axis (e.g., the points of initial aligned shape 138rotate along the z-axis). At each adjustment, processing circuitry 102may determine a distance between the initial aligned shape 138 and shapemodel 106 (e.g., points in the initial aligned shape and pointsrepresented in shape model 106).

For instance, processing circuitry 102 may determine the distancesbetween points on initial aligned shape 138 (e.g., such as points ofacromion and the coracoid) and corresponding points on shape model 106(e.g., acromion and coracoid on shape model 106). The correspondingpoints refer to points in the initial aligned shape 138 and points inshape model 106 that identify the same patient anatomy. Processingcircuitry 102 may keep rotating the initial aligned shape 138 until thedistance between the initial aligned shape 138 and shape model 106 aboutthe z-axis 134 satisfies a threshold (e.g., less than thresholdincluding where distance is minimized). Then, processing circuitry 102may rotate the initial aligned shape 138 along the y-axis 138 until thedifference in points between initial aligned shape 138 and correspondingpoints in shape model 106 about the y-axis satisfies a threshold (e.g.,less than threshold including where distance is minimized). Processingcircuitry 102 may rotate the initial aligned shape model about thex-axis 132 until the difference in points between initial aligned shape138 and corresponding points in shape model 106 along the x-axis 132satisfies a threshold (e.g., less than threshold including wheredistance is minimized).

As one example, processing circuitry 102 may modify the parameters ofthe initial aligned shape 138 so that the initial aligned shape 138rotates 5-degrees along an axis (e.g., a first instance of the initialaligned shape model) within a search range of [−45-degrees, 45-degrees]or [−27 degrees, 27 degrees]. Processing circuitry 102 may determine thedistance between points of the first instance of the initial alignedshape 138 and corresponding points of shape model 106. Assuming thedistance is not at a minimum or less than threshold, next, processingcircuitry 102 may modify the parameters of the initial aligned shape 138so that the initial aligned shape rotates 10-degrees along the axis(e.g., a second instance of the initial aligned shape 138) and determinethe distance (e.g., between points of the second instance of the initialaligned shape 138 and corresponding points of shape model 106).Processing circuitry 102 may repeat these operations about each of theaxes for each instance of the initial aligned shape 138. Processingcircuitry 102 may keep repeating these operations until processingcircuitry 102 determines an instance of the initial aligned shape 138that resulted in a distance less than a threshold (such as the minimumdistance). The instance of the initial aligned shape 138 that resultedin the distance being less than threshold (including example of minimumdistance) among the various iterative instances is selected as alignedshape 140, illustrated in FIG. 13.

The result of these operations may be the aligned shape (e.g., a modelthat has been rotated along the x, y, and z-axes). For example, FIG. 13illustrates aligned shape 140 that is aligned to shape model 106.Aligned shape 140 is shown as superimposed on shape model 106, in FIG.13. Aligned shape 140 (e.g., simply aligned shape 140) provides a betteralignment to shape model 106 as compared to initial aligned shape 138.For instance, as shown in FIG. 13, aligned shape 140 is better alignedto shape model 106 than initial aligned shape 138 to shape model 106, asshown in FIG. 12.

For instance, initial aligned shape 138 and shape model 106 may begenerally aligned. However, there may be some tilting or misorientationbetween the initial aligned shape 138 and shape model 106 due to theover or under segmentation of the image data of anatomical objects inscans 108. To address this, processing circuitry 102 may separatelyrotate initial aligned shape 138 about each axis (x, y, z) until thedistance between initial aligned shape 138 and shape model 106 satisfiesa threshold (e.g., minimized). Accordingly, by iteratively rotatinginitial aligned shape 138, processing circuitry 102 may generate alignedshape 140 (also called intermediate aligned shape 140). Because thedistance between points on aligned shape 140 and corresponding points ofshape model 106 may be minimized, aligned shape 140 (e.g., intermediatealigned shape 140) is substantially in the coordinate system of shapemodel 106.

Aligned shape 140 may be referred to as an intermediate aligned shapebecause in some examples, shape model 106 is deformed to the shape ofaligned shape 140 to generate the pre-morbid characteristics of thepatient anatomy. Processing circuitry 102 may utilize techniquesdescribed below to deform shape model 106 to register shape model 106 toaligned shape 140. However, in some examples, processing circuitry 102may utilize some other techniques to deform shape model 106 to registerto aligned shape 140. Also, for the example techniques to register shapemodel 106 to aligned shape 140, it may be possible that such techniquesare preformed where aligned shape 140 is generated using techniquesother than those described above.

As described above, processing circuitry 102 may be configured toregister shape model 106 to aligned shape 140. Registering shape model106 to aligned shape 140 may refer to iteratively deforming shape model106 until a cost function value is below a threshold (e.g., minimized).The registering algorithm is a global loop that includes two inneriterative loops referred to as iterative closest point (ICP) loop andelastic registration (ER) loop. There may be other example ways in whichto perform the registering algorithm, and the use of two loops within aglobal loop is just one example way in which to perform the registeringalgorithm. For instance, in some examples, it may be possible to bypassthe ICP loop and only perform the ER loop. In some examples, it may bepossible to perform only the ICP loop and bypass the ER loop.

In the ICP loop for the first iteration of the global loop, the initialinput is aligned shape 140 and shape model 106. For the ICP loop in thefirst iteration of the global loop, processing circuitry 102 iterativelymodifies aligned shape 140 based on a comparison of aligned shape 140 toshape model 106 to generate a first order shape. For example, for eachiteration through the ICP loop, processing circuitry 102 determines acost value, and the modified aligned shape that results in the costvalue less than a threshold (e.g., minimized) is the output of the ICPloop and is referred to a first order shape. An example of the ICPalgorithm is described in more detail below.

The first order shape is an input into the ER loop for the firstiteration of the global loop. Another input into the ER loop, for thefirst iteration of the global loop, is shape model 106. For the ER loopin the first iteration of the global loop, processing circuitry 102 maydeform shape model 106 to generate a plurality of estimated shape models(e.g., one for each time through the ER loop). For each loop of the ERloop, processing circuitry 102 may determine a total cost value, anddetermine which iteration of the ER loop utilized the estimated shapemodel having the total cost value that satisfies the threshold (e.g.,less than threshold including where minimized). The result of the ERloop (e.g., the estimated shape model having the total cost value thatsatisfies the threshold) is a first order registered shape model. Thiscompletes one iteration of the global loop. The total cost value, forthe first iteration of the global loop, may be based on distances andorientation between the estimated shape models and the first ordershape, constraints on medialization of anatomy, and parameter weighting.

For example, assume that S1 is the first order shape model thatprocessing circuitry 102 is to determine using the ER loop in the firstiteration of the global loop. For the ER loop, processing circuitry 102may generate S11, S12, S13, and so forth, where each one of S11, S12,S13, and so forth is a deformed version of shape model 106 and S11, S12,S13, and so forth are each an example of an estimated shape model. Foreach of one of S11, S12, S13, and so forth, processing circuitry 102 maydetermine a total cost value (e.g., S11_total cost value, S12_total costvalue, S13_total cost value, and so forth). Processing circuitry 102 maydetermine which of the total cost values is the less than a threshold(e.g., minimized). The estimated shape model (e.g., one of S11, S12,S13, and so forth) having the total cost value that is below a threshold(e.g., minimized) is S1 (e.g., the first order registered shape model).After this, the first iteration of the global loop is complete.

For the second iteration of the global loop, processing circuitry 102performs the operations of the ICP loop. In the second iteration of theglobal loop, for the ICP loop, one input is the first order shape model,generated from the ER loop, and the other input is the first ordershape, generated by the previous ICP loop. In the second iteration ofthe global loop, for the ICP loop, processing circuitry 102 iterativelymodifies the first order shape based on a comparison of the first ordershape to the first order shape model. For instance, for each iterationthrough the ICP loop, processing circuitry 102 determines a cost value,and the modified first order shape that results in the cost value lessthan a threshold (e.g., minimized) is the output of the ICP loop and isreferred to a second order shape.

The second order shape is an input into the ER loop for the seconditeration of the global loop. Another input into the ER loop, for thesecond iteration of the global loop, is shape model 106 and/or the firstorder shape model. Where shape model 106 is used, the values of b_(i)may range within [−b+b]. Where the first order shape model is used, thevalues of b_(i) may range within [−b+b_prev b+b_prev], where b_prev isthe value found in the previous iteration (e.g., used to determine thefirst order shape model).

For the ER loop in the second iteration of the global loop, processingcircuitry 102 may deform shape model 106 and/or the first order shapemodel to generate a plurality of estimated shape models (e.g., one foreach iteration of the ER loop). For each iteration of the ER loop,processing circuitry 102 may determine a total cost value, and determinewhich iteration of the ER loop utilized the estimated shape model havingthe total cost value that satisfies the threshold (e.g., minimized). Theresult of the ER loop, in the second iteration of the global loop,(e.g., the estimated shape model having the total cost value thatsatisfies the threshold) is a second order shape model. This completes asecond iteration of the global loop. The total cost value, for thesecond iteration of the global loop, may be based on distances andorientation between the estimated shape models and the second ordershape, constraints on medialization of anatomy, and parameter weighting.

For example, assume that S2 is the second order shape model thatprocessing circuitry 102 is to determine using the ER loop in the seconditeration of the global loop. For the ER loop, processing circuitry 102may generate S21, S22, S23, and so forth, where each one of S21, S22,S23, and so forth is a deformed version of shape model 106 and/or thefirst shape model and S21, S22, S23, and so forth are each an example ofan estimated shape model. For each of one of S21, S22, S23, and soforth, processing circuitry 102 may determine a total cost value (e.g.,S21 total cost value, S22 total cost value, S23 total cost value, and soforth). Processing circuitry 102 may determine which of the total costvalues is the less than a threshold (e.g., minimized). The estimatedshape model (e.g., one of S21, S22, S23, and so forth) having the totalcost value that is below a threshold (e.g., minimized) is S2 (e.g., thesecond order registered shape model). After this, the second iterationof the global loop is complete.

In the above example, processing circuitry 102 generated S11, S12, S13,and so forth (e.g., first set of estimated shape models) for the firstiteration of the global loop and generated S21, S22, S23, and so forth(e.g., second set of estimated shape models) for the second iteration ofthe global loop. In some examples, the number of estimated shape modelsin the first and second set of estimated shape models may be the same.In some examples, the number of estimated shape models in the first andsecond set of estimated shape models may be different (e.g., 6 estimatedshape models in the first set of estimated shape models and 14 estimatedshape models in the second set of estimated shape models). One reasonfor having different numbers of estimated shape models in differentiterations of the global loop is that by increasing the number ofestimated shape models in subsequent iterations of the global loop, itmay be possible to more accurately determine a global minimum ascompared to if the same or fewer number of estimated shape models isused. That is, processing circuitry 102 may gradually increase thenumber of unknowns (e.g., modes and scale factors) used to generate theestimated shape models through multiple ER loops.

This process keeps repeating until the total cost value is below athreshold (e.g., minimized). The registered shape model (e.g., N^(th)order registered shape model) that provides the total cost value below athreshold (e.g., minimized) provides a pre-morbid characterization ofthe patient anatomy. Some additional processing may be needed to bringback the pre-morbid characterization into the patient coordinate system.

As described above, for determining the pre-morbid characterization,there is a global loop that includes an ICP loop and an ER loop. Thefollowing describes an example of the ICP loop. In the ICP loop, thereis a source point clout and a target point cloud. The target point cloudremains fixed and processing circuitry 102 modifies (e.g., transforms)the source point cloud such that the transformed point cloud matches thetarget point cloud. A difference between the transformed point cloud andthe target point cloud indicates how well of a match the transformedpoint cloud is to the source cloud. In one or more examples, processingcircuitry 102 keeps transforming the source point cloud until thedifference is below a threshold. For instance, processing circuitry 102keeps transforming the source point cloud until the difference isminimized.

In one or more examples, in the first iteration of the global loop, forthe ICP loop, the target point cloud is shape model 106 and the sourcepoint cloud is aligned shape 140. Processing circuitry 102 may determinedistances between points on aligned shape 140 and corresponding pointson shape model 106. The points on aligned shape 140 that are used may bepoints that are known not be pathological (e.g., medial glenoid vault,the acromion, and the coracoid, as a few non-limiting examples). Otherexamples include various other points on the scapula that are present inthe image data of scans 108. Processing circuitry 102 may find pointsfor the same anatomy on shape model 106.

FIG. 14 is a conceptual diagram illustrating an example for determiningdifference values for ICP algorithm. For example, processing circuitry102 may determine a point (p) on target point cloud (e.g., shape model106). Processing circuitry 102 may then determine closest point to pointp on aligned shape 140, which in the example of FIG. 14 is point p_(pp).Processing circuitry 102 may determine a set number of points (e.g., 10points) that are proximate to point p_(pp) on aligned shape 140 such aspa, illustrated in FIG. 14.

For point p on shape model 106 and each of these points (e.g., closestpoint and proximate points on aligned shape 140), processing circuitry102 may determine a normal vector. For example, vector ns is the normalvector for point p, vector npp is the normal vector for point p_(pp),and vector nj is the normal vector for point p_(ct). One way todetermine the normal vectors is based on vectors orthogonal to atangential plane to the point. Another way to compute a point's normalis to calculate the normal of each triangle that shares that point andthen attribute the mean normal. In order to overcome local noise,normals are smoothed by computing the mean normal of points within aspecific vicinity.

Processing circuitry 102 may determine an orientation and distancedifference between point p on shape model 106 and points on alignedshape 140 based on the following equation:

Difference=norm(p _(s) −p _(t))² +w*norm(n _(s) −n _(t))².

In the above equation, p_(s) is a source point (e.g., point p on shapemodel 106), pt is point on aligned shape 140 (e.g., closest point andproximate points such as point p_(pp) or p_(ct)), ns is the normalvector of point ps (e.g., ns as shown in FIG. 14), nt is the normalvector of point on aligned shape 140 (e.g., npp and nj), and w is apre-programmed weighting factor. Typically, w equals 1 to give equalweights between distance and orientation. In some examples, high/lowcurvature regions may require higher/lower values of ‘w’. The value of‘w’ may be defined empirically.

Processing circuitry 102 may determine which of the difference valuesresulted in the smallest different value. For example, assume that afirst difference value is based on p, ns, p_(pp), and n_(pp) and asecond difference value is based on p, ns, p_(ct), and n_(j). In thisexample, the second difference value may be smaller than the firstdifference value. Processing circuitry 102 may determine pa on alignedshape 140 as a corresponding point to point p on shape model 106.

Although FIG. 14 illustrates one point p on shape model 106, there maybe plurality (e.g., N number) of points on shape model 106, andprocessing circuitry 102 may perform operations similar to thosedescribed above to identify N corresponding points on aligned shape 140for each of the N points on shape model 106. Accordingly, there may be Ndifference values. Processing circuitry 102 may sum together the Ndifference values and divide the result by N. If the resulting value isgreater than a threshold (e.g., including examples where the resultingvalue is not minimized), processing circuitry 102 may continue with theICP loop.

With the N points on shape model 106 and the N points on aligned shape,processing circuitry 102 may determine a rotation matrix, R, and atranslation vector, t. Based on the rotation matrix and the translationvector, processing circuitry 102 may rotate and translate the points onaligned shape 140 (e.g., −R multiplied by (points on aligned shape) plustranslation vector). The result is a first intermediate first ordershape. One example way of generating the rotation matrix R and thetranslation vector t is described in Berthold K. P. Horn (1987),“Closed-form solution of absolute orientation using unit quaternions,”https://pdfs.semanticscholar.org/3120/a0e44d325c477397afcf94ea7f285a29684a.pdf.

This may conclude one instance of the ICP loop. Processing circuitry 102may then repeat these operations where processing circuit 102 uses thefirst intermediate first order shape, in place of aligned shape 140, andshape model 106. Processing circuitry 102 may determine N differencevalues for each of the N points on shape model 106 and the N points onthe intermediate first order shape. Processing circuitry 102 may sumtogether the N difference values and divide by N. If the resulting valueis greater a threshold (or not minimized), processing circuitry 102 maydetermine the rotation matrix and the translation vector and determine asecond intermediate first order shape. This may conclude a seconditeration through the ICP loop.

Processing circuitry 102 may keep repeating these operations untilprocessing circuitry 102 determines a value resulting from the sum of Ndifference values between the N points on shape model 106 and the Npoints on the Xth intermediate first order shape being divided by Nwhere the value satisfies a threshold (such as when the value isminimized). In this case, the ICP loop is concluded and processingcircuitry 102 determines that the Xth intermediate first order shape isthe first order shape.

The first order shape becomes an input into the elastic registration(ER) loop. Another input in the ER loop is shape model 106. In the ERloop, processing circuitry 102 may determine a plurality of estimatedshape models based on shape model 106. For instance, processingcircuitry 102 may determine a new shape model (s_(i)) based on thefollowing equation:

s _(i) =s′+Σ _(i) b _(i)√{square root over (λ_(i))}×v _(i).

In the above equation, s′ is shape model 106 (e.g., point cloud of meanshape as one example, where point cloud defines coordinates of pointswithin shape model 106, such as vertices of primitives that form shapemodel 106). In the equation, λ_(i) is the eigenvalues and v_(i) is theeigenvectors of the covariance matrix respectively (also called modes ofvariations). The covariance matrix represents the variance in a dataset.The element in the i, j position is the co-variance between the i-th andj-th elements of a dataset array.

Processing circuitry 102 may determine the plurality of estimated shapemodels by selecting different values of b_(i). In the above, b_(i) is ascaling factor to scale the eigenvalues or eigenvectors. The eigenvalue(λ_(i)) the eigenvector (v_(i)) are known from the generation of shapemodel 106 (e.g., s′). For ease of illustration, assume that processingcircuitry 102 determined 10 estimated shape models based on 10 selected(e.g., randomly or pre-programmed) values of bi. There may be more orfewer than 10 estimated shape models.

In the ER loop, processing circuitry 102 may perform the followingoperations on the estimated shape models. As part of the ER loop,processing circuitry 102 may determine which of the estimated shapemodels produces a cost function value that is below a threshold (e.g.,minimized). The cost function value may be based on three sub-costfunction values, although more or fewer than the three sub-cost functionvalues are possible. For example, assume that the first sub-costfunction value is Cf1, the second sub-cost function value is Cf2, andthe third sub-cost function value is Cf3. In some examples, the costfunction value (CO is equal to Cf1+Cf2+Cf3. In some examples, weightsmay be applied, such that Cf=w1*Cf1+w2*Cf2+w3*Cf3, 0<wi<1 and 0≤Cfi≤1.The weights (wi) may be pre-programmed. To complete the ER loop,processing circuitry 102 may determine which of the estimated shapemodel generates a Cf value that satisfies a threshold (e.g., less thanthreshold including minimized).

A first sub-cost function value (Cf1) is based on distances andorientation between the estimated shape models (e.g., generated based ondifferent values for bi) and the first order shape generated by the ICPloop. For instance, for each of the estimated shape models, processingcircuitry 102 may determine a Cf1 value. The equation for Cf1 may thesame as the equation used for the ICP loop.

For example, Cf1=Σnorm(p_(s)−p_(t))²+w*norm(n_(s)−n_(t))²/N. However, inthis case, p_(s) and n_(s) are for points and vectors of those points oneach of the estimated shape models, and p_(t) and n_(t) are for pointsand vectors of those point on the first order shape. N refers to thenumber of points on the first order shape and on each of the estimatedshape models.

Processing circuitry 102 may determine the value for Cf1 using the aboveexample techniques described for the ICP loop. For example, for a firstestimated shape model, processing circuitry 102 may determine a value ofCf1 (e.g., first Cf1), for a second estimated shape model, processingcircuitry 102 may determine a value for Cf1 (e.g., second Cf1), and soforth. In this case, processing circuitry 102 may not perform anytranslation or rotation of any of the estimated shape models but utilizethe calculation of Cf1 for each of the estimated shape models to selectone of the estimated shape models.

The value of Cf1 is one of the sub-cost function values used todetermine the cost function value of the ER loop. In some examples, itmay be possible to determine the estimated shape model that minimizesthe Cf1 value and end the ER loop. However, simply minimizing thedifference (e.g., distance of points) between the output of the ICP loopand the estimated shapes generated from shape model 106 may not besufficient to determine the pre-morbid characterization of the patientanatomy. For example, there may be logical constraints on the locationof the shape generated by the ICP loop (e.g., the first order shapeafter the initial conclusion of the ICP loop) relative to the patient'sbody and minimizing the difference (e.g., distances) between the firstorder shape and the estimated shapes may possibly violate such logicalconstraints. For example, the sub-cost function value, Cf1, can benon-convex for some cases and therefore may lead to a local minimum thatis incorrect. With additional sub-cost function values, processingcircuitry 102 may correct for the non-convexity of the total costfunction value, Cf.

For example, when predicting the pre-morbid characterization of theglenoid, the glenoid of the estimated shape models should not be moremedialized than the current patient glenoid. In this disclosure,medialized or medial means towards the center of the patient's body.When the patient suffers injury or disease at the glenoid, the boneerosion may cause the pathological glenoid to be more medial (e.g.,shift closer to the middle of the patient's body) than prior to theinjury or aliment. Therefore, a glenoid on an instance of one of theestimated shape models that is more medial than the current glenoid ismore than likely not a proper estimate of the pre-morbid patientanatomy. Again, the injury or disease may have caused the glenoid tobecome more medial, and therefore, if one of the estimated shape modelsincludes a glenoid that is more medial than the current position of theglenoid, the instance of the estimated shape model may not have thepre-morbid characteristics of the patient anatomy.

That is, assume that a first estimated shape model, generated from shapemodel 106, minimized the value of Cf1 based on distances and orientationbetween the first estimated shape model and the first order shapegenerated by the ICP loop. In this example, if the glenoid of the firstestimated shape model is more medial than the current position of theglenoid, the first estimated shape model may not be the correct or bestestimate of the pre-morbid shape of the pathological anatomy.

To ensure that medialized instances of the estimated shape models arenot used to determine the pre-morbid characterization, processingcircuitry 102 may determine the value of Cf2. The value of Cf2 indicateswhether the estimated shape model is more or less medial than thepatient anatomy. That is, a second example sub-cost function value isCf2. The value of Cf2 is a measure of constraints on medialization ofanatomy.

To determine the value of Cf2, processing circuitry 102 may determine athreshold point (p_(th)) laying on transverse axis 134 of the patientanatomy (e.g., pathological scapula). The point p_(th) represents athreshold of the glenoid medialization that should be crossed by aninstance of the intermediate shape model used to determine thepre-morbid characterizations. FIGS. 15A and 15B illustrate example waysin which to determine p_(th). For example, processing circuitry 102 maydivide image data from scans 108 of the glenoid into four quarters ofinterest (e.g., superior, posterior, inferior, and anterior).

FIGS. 15A and 15B are conceptual diagrams illustrating portions of aglenoid for determining parameters of a cost function used to determinea pre-morbid shape of anatomy of a patient. As described in more detail,with the illustrated portions of the glenoid in FIGS. 15A and 15B,processing circuitry 102 may determine a value of p_(th). Processingcircuitry 102 may also determine medialization values for each of theestimated shape models (e.g., generated from shape model 106 usingvalues for bi and based on the eigenvalues and eigenvectors as describedabove). Based on the value of p_(th) and the medialization values,processing circuitry 102 may determine a sub-cost value for Cf2.

FIG. 15A illustrates transverse axis 134 (e.g., as described above) thatdivides a glenoid surface into anterior side 142 and posterior side 144.FIG. 15B illustrates transverse axis 134 that divides a glenoid surfaceinto superior side 150 and inferior side 152. For instance, referringback to FIG. 6, processing circuitry 102 determined transverse axis 134.Then, processing circuitry 102 may determine anterior side 142,posterior side 144, superior side 150, and inferior side 152 based onaxial or sagittal cuts through scapula 118. The result may be theexample illustrated in FIGS. 15A and 15B.

Processing circuitry 102 may project points on the glenoid surface foreach of the portions (e.g., anterior and posterior sides of FIG. 15A andsuperior and inferior sides of FIG. 15B) to transverse axis 134 anddetermine a center of mass of the projected points of each portion.Point projection onto a line is the closest point on that line. The lineand the vector defined by the point and its projection areperpendicular. This can be calculated by choosing a random point on theline which forms a hypotenuse with the point to be projected. Usingtrigonometry, the projection is the hypotenuse length multiplied by thecosine of the angle defined by the hypotenuse and the line. The centerof mass is the mean point of the projected points on that line and canalso be considered as the barycenter.

For example, point 146 in FIG. 15A is an example of the center of massof projected points for anterior side 142. Point 148 in FIG. 15A is anexample of the center of mass of projected points for posterior side144. Point 154 in FIG. 15B is an example of the center of mass ofprojected points for superior side 150. Point 156 in FIG. 15B is anexample of the center of mass of projected points for inferior side 152.

In one or more examples, processing circuitry 102 may determine a mostlateral barycenter point (e.g., the point that is furthest away from thecenter of the patient's body) from points 146, 148, 154, and 156.Processing circuitry 102 may set the most lateral barycenter point asthe threshold point p_(th). Processing circuitry 102 may also determinethe most lateral quarter as Q_(th). In some examples, the most lateralbarycenter point need not necessarily be in the most lateral quarter.For example, assume that the point 156 is the most lateral barycenterpoint (e.g., threshold point p_(th)). In this example, the most lateralquarter (Q_(th)) may be inferior side 152 if the most lateral barycenterpoint were in the most lateral quarter. However, it is possible that themost lateral barycenter point is not in the most lateral quarter.

Processing circuitry 102 may determine a corresponding quarter in theinstance of the estimated shape models with the Q_(th) quarter (e.g.,most lateral quarter). Processing circuitry 102 may project the pointsof the quarter of the instance of the estimated shape models totransverse axis 134. For example, for each of the estimated shapemodels, processing circuitry 102 may determine points like points 146,148, 154, and 156 for each of the estimated shape models. However,because of the different medialization of the estimated shape models(e.g., due to the different values of bi used to generate the estimatedshape models), the respective projected points may be at differentlocations on the transverse axis 134.

For example, processing circuitry 102 may determine an anchor point ontransverse axis 134. This anchor point is in the same location ontransverse axis 134 for each of the estimated shape models. Processingcircuitry 102 may determine distances of the projected points to theanchor point. In some examples, p_(th) may be the anchor point.

Processing circuitry 102 may determine the distance of the projectedpoints to p_(th). Processing circuitry 102 may determine an average ofthe distances of the projected points as a value equal to d_(med).

If the value of d_(med) is zero or positive, it means that the instanceof the estimated shape model is more medial than the current patientanatomy (e.g., glenoid and scapula), and therefore not a good predictorfor the pre-morbid characteristics of the patient anatomy. If the valueof d_(med) is negative, it means that the instance of the estimatedshape model is less medial than the current patient anatomy, andtherefore may be a possible predictor for the pre-morbid characteristicsof the patient anatomy.

In some examples, processing circuitry 102 may set Cf2 equal to a valuebased on d_(med) (e.g., Cf2 is a function of dined). For example, thefunction used to calculate Cf2 based on d_(med) may be an increasingfunction for values of d_(med) greater than zero and a decreasingfunction for values of d_(med) less than zero. As one example, ifd_(med) is greater than or equal to 0, processing circuitry 102 may setCf2 equal to d_(med) and set Cf2 equal to 0 if d_(med) is less thanzero. In this way, if the instance of the estimated shape models is moremedial than the current patient anatomy, the value of Cf2 is a positivenumber, and the overall cost value of the cost function will increase.Again, the cost function (Cf) is equal to Cf1 plus Cf2 plus Cf3 (andpossibly updated with weights w1, w2, and w3), and if Cf2 is a positivenumber, the value of Cf will increase as compared to if the value of Cf2is zero. Because processing circuitry 102 is determining cost value thatsatisfies a threshold (e.g., minimizing the cost function), having apositive value of Cf2 causes processing circuitry 102 to not useinstances of the estimated shape models that are more medial than thecurrent patient anatomy for determining the pre-morbid characteristics.

In some examples, the cost function value (Cf) may be based only on Cf1and Cf2. For instance, for the ER loop, processing circuitry 102 maydetermine which estimated shape model results in minimizing Cf. However,it may be possible that in such cases that the estimated shape model isone with high variation (e.g., has a lower probability of representingpre-morbid characteristics in the general population). Accordingly, insome examples, for the ER loop, processing circuitry 102 may determine aparameter weighting value (e.g., Cf3). The parameter weighting valueweights more likely estimated shape models as having a higherprobability of being a representation of the pre-morbid anatomy andweights less like estimated shape models as having a lower probabilityof being a representation of the pre-morbid anatomy.

For example, in some examples, processing circuitry 102 may alsodetermine a sub-cost function value, Cf3, that is used to penalizeagainst more complex solutions within an increasing variance in the dataerrors. For instance, processing circuitry 102 may determine a gradientsmoothing term using eigenvalues to penalize the participating modes ofvariation according to the following equation.

${{Cf}\; 3} = {\sum_{l}^{N}{\frac{\sum_{j}^{i}\lambda_{j}}{\sum_{j}^{N}{\lambda\; j}} \times b_{i}^{2}}}$

In the above equation, N is the number of modes used to build aninstance of the estimated shape model. Cf3 may not be necessary in allexamples. For example, in the equation for Cf3, if an instance of theestimated shape model has many modes, then there will be a larger numberof values to sum together, as compared to if the instance of theestimated shape model had fewer modes. Therefore, the result of the sum(e.g., value of Cf3) will be greater for those estimated shape modelshaving larger modes than those estimated shape models having fewermodes. Accordingly, a larger value of Cf3 will cause the cost functionvalue, Cf, to be bigger than a smaller value of Cf3. Because processingcircuitry 102 may be minimizing the value of Cf, estimated shape modelshaving a larger value of Cf3 are less likely to be determined as thepre-morbid shape of the patient anatomy as compared to estimated shapemodels having a smaller value of Cf3.

In general, Cf3 is composed of two terms: a coarse or hard term and afine or smooth one. Eigenvalues are the diagonal positive values of thedecomposition matrix. Their order reflects the occurrence of thecorresponding eigenvectors into the database. Means that firsteigenvalues represent the most “important” or frequent variation in thedatabase, while the last eigenvalues represent the least frequent ones(usually representing noise). In the coarse term of Cf3, processingcircuitry 102 may drop those eigenvectors that participate to the leastimportant K % of the database variance (i.e. bi=0 if lambda(i)>q wherevi for i<=q represents (100−K) % of the database variance). In the fineterm of Cf3, processing circuitry 102 may gradually disadvantage highereigenvectors. As a result the algorithm avoids complex or noisysolutions. In general, the terminology “smooth” is used to indicateaddition of aa regularization term to an optimization method.

Processing circuitry 102 may determine the estimated shape model forwhich w1*Cf1+w2*Cf2+w3*Cf3 is less than a threshold (e.g., minimized).This estimated shape model is a first order shape model for the firstiteration through the global loop.

For example, for the first iteration through the global loop, for the ERloop, assume processing circuitry 102 determines the following estimatedshape models based on shape model 106 and different values of bi. Forexample, a first estimated shape model may be s11, where s11 is equal tos′+Σ_(i)b11_(i)√{square root over (λ_(i))}×v_(i), where s′ is shapemodel 106, λ_(i) is the eigenvalues used to determine shape model 106,and v_(i) is the eigenvectors used to determine shape model 106. In thisexample, b11, is a first weighting parameter. Processing circuitry 102may determine a second estimated shape model (e.g., s12), where s12 isequal to s′+Σ_(i)b12_(i)√{square root over (λ_(i))}×v_(i), where b12_(i)is a second weighting parameter. In this manner, processing circuitry102 may determine a plurality of estimated shape models (e.g., s11, s12,s13, and so forth).

For each of the estimated shape model, processing circuitry 102 maydetermine a value of Cf1, Cf2, and Cf3. Again, not all of Cf1, Cf2, andCf3 are needed. For example, processing circuitry 102 may determines11_Cf1 based on estimated shape model s11 and the first order shapegenerated by the ICP loop. Processing circuitry 102 may determines12_Cf1 based on estimated shape model s12 and the first order shapegenerated by the ICP loop, and so forth. Processing circuitry 102 maydetermine s11_Cf2, s12_Cf3, and so forth as described above for theexample techniques to determine Cf2. Similarly, processing circuitry 102may determine s11_Cf3, s12_Cf3, and so forth as described above for theexample techniques to determine Cf3.

Processing circuitry 102 may determine s11_Cf as:w1*s11_Cf1+w2*s11_Cf2+w3*s11_Cf3, determine s12_Cf as:w1*s12_Cf1+w2*s12_Cf2+w3*s13_Cf3, and so forth. The weights applied tothe Cf1, Cf2, and Cf3 may be different for each of s11, s12, s13, and soforth, or the weights may be the same. Processing circuitry 102 maydetermine which one of s11_Cf, s12_Cf, s13_Cf, and so forth is theminimum (or possibly less than a threshold). Assume that s12_Cf is theminimum. In this example, processing circuitry 102 may determineestimated shape model s12 as the result of the ER loop, which for thefirst iteration of the global loop is the first order shape model.

This may conclude the first iteration of the global loop. For example,in the first iteration of the global loop, the ICP loop generated afirst order shape and the ER loop generated a first order shape model.Then, for the second iteration of the global loop, the input to the ICPloop is the first order shape model generated from the previous ER loopand the first order shape generated from the previous ICP loop. In theICP loop for the second iteration of the global loop, processingcircuitry 102, based on the first order shape model and the first ordershape, generates a second order shape. The second order shape is aninput to the ER loop in the second iteration of the global loop. Also,in the ER loop, in the second iteration of the global loop, processingcircuitry 102 may determine estimated shape models (e.g., s21, s22, s23,and so forth) based on shape model 106 and/or based on the first ordershape model (e.g., s12 in this example). The output of the ER loop maybe a second order shape model, and this may conclude the seconditeration of the global loop.

This process repeats until processing circuitry 102 determines aninstance of the estimated shape model that minimizes the Cf value. Forinstance, assume that after the first iteration of the global loop,processing circuitry 102 outputted estimated shape model s12 having costvalue of s12_Cf. After the second iteration of the global loop,processing circuitry 102 outputted estimated shape model s23 having costvalue of s23_Cf. After the third iteration of the global loop,processing circuitry 102 outputted estimated shape model s36 having costvalue of s36_Cf. In this example, processing circuitry 102 may determinewhich one of s12_Cf, s23_Cf, or s36_Cf is the minimum value, anddetermine the estimated shape associated with the minimum Cf value asthe pre-morbid anatomy of the patient. For example, assume that s23_Cfwas the minimum. In this example, processing circuitry 102 may determinethat estimated shape model s23 is represents the pre-morbidcharacteristics of the patient.

In the above examples, processing circuitry 102 may loop through theglobal loop until the value of Cf is minimized. However, in someexamples, processing circuitry 102 may be configured to loop through theglobal loop for a set number of iterations. Processing circuitry 102 maythen determine which one of the estimated shape models resulted in theminimum value of Cf. In some examples, processing circuitry 102 may loopthrough the global loop until the value of Cf is below a threshold.

As described above, processing circuitry 102 may determine a minimum forthe cost function value, Cf Minimizing the value of Cf or determiningthe minimum Cf value from a plurality of Cf values are two example waysin which to satisfy the cost function. There may be other ways in whichto satisfy the cost function. As one example, satisfying the costfunction may mean that the cost value of the cost function is less thana threshold. Also, it may be possible to reconfigure the cost functionso that satisfying the cost function means maximizing the cost function.For instance, one of the factors in the cost function may be a distancebetween points of the estimated shape models and corresponding points inthe output from the ICP loop. In some examples, processing circuitry 102may minimize the distance between the estimated shape models and outputfrom ICP loop and may generate a number that is inversely correlated todistance (e.g., the closer the distance, the larger the numberprocessing circuitry 102 generates). In this example, to satisfy thecost function, processing circuitry 102 may maximize the cost value thatthat is inversely correlated to the distance. Therefore, although theexamples are described with respect to minimizing as part of the globalloop and the ICP loop, in some examples, to satisfy (e.g., optimize) thecost function, processing circuitry 102 may maximize the value of CfSuch techniques are contemplated by this disclosure. For example, a costvalue satisfying a threshold value means determining cost value is lessthan threshold value where cost value being less than threshold value isindicative of pre-morbid shape or greater than threshold value wherecost value being greater than threshold value is indicative ofpre-morbid shape.

FIG. 16 is a flowchart illustrating an example method of operation inaccordance with one or more example techniques described in thisdisclosure. For instance, FIG. 16 illustrates an example manner in whichprocessing circuitry 102 may perform the ER loop. Memory 104 may storeshape model 106, and information used to determine shape model 106 suchas the eigenvalues and eigenvectors. In some examples, processingcircuitry 102 may determine estimated shape models (e.g., by selectingdifferent scaling factors (130 and store the estimated shape models inmemory 104. In some examples, the estimated shape models may bepre-generated and stored in memory 104.

Processing circuitry 102 may determine respective medialization values(e.g., Cf2) for each of the plurality of estimated shape models (160).As described, the plurality of estimated shape models is generated fromshape model 106. In some examples, the estimated shape models may begenerated from the result of the ICP loop. Each of the medializationvalues is indicative of an amount by which each respective one of theestimated shape models is medialized relative to a current position ofthe anatomical object.

Processing circuitry 102 may determine respective cost values (Cf) foreach of the plurality of estimated shape models based at least in parton the respective determined medialization values (Cf2) for each of theplurality of estimated shape models (162). In some examples, rather thanjust relying on Cf2, processing circuitry 102 may determine Cf1 andpossibly Cf3. For example, processing circuitry 102 may determine ashape based on shape model 106 and an aligned shape generated from imagedata of the anatomical object. In this example, the shape determinedbased on shape model 106 and the aligned shape may be the result of theICP loop. Processing circuitry 102 may determine respective distance andorientation difference values (Cf1) for each of the plurality ofestimated shape models. Each of the respective distance and orientationdifference values is indicative of a difference in distance andorientation between respective estimated shape models and the determinedshape. Processing circuitry 102 may determine respective cost values foreach of the plurality of estimated shape models based at least in parton the respective determined medialization values (Cf2) for each of theplurality of estimated shape models and the respective determineddistance and orientation difference values (Cf1).

In some examples, processing circuitry 102 may determine respectiveweighting values (Cf3) based on a likelihood of each of the respectiveestimated shape models being representative of the pre-morbid shape ofthe anatomical object. In such examples, processing circuitry 102 maydetermine respective cost values (Cf) for each of the plurality ofestimated shape models based at least in part on the respectivedetermined medialization values (Cf2) for each of the plurality ofestimated shape models and one or more of the respective determineddistance and orientation difference values (Cf1) and the respectiveweighting values (Cf3).

To determining the respective weighting values (Cf3), processingcircuitry 102 may be configured to perform

$\sum_{l}^{N}{\frac{\sum_{j}^{i}\lambda_{j}}{\sum_{j}^{N}{\lambda\; j}} \times {b_{i}^{2}.}}$

N equals a number of modes used to build respective plurality ofestimated shape models, λ equals eigenvalues of the shape model, and bequals a scaling factor used to determine respective plurality ofestimated shape models.

To determine respective distance and orientation difference values (Cf1)for each of the plurality of estimated shape models, processingcircuitry 102 may be configured to determine respective distancesbetween corresponding points on respective estimated shape models andthe determined shape, determine respective angular differences betweennormal vectors for the corresponding points on respective estimatedshape models and the determined shape, and determine respective distanceand orientation difference values based on the determine respectivedistances and the determined respective angular differences.

To determine respective medialization values for each of the pluralityof estimated shape models, processing circuitry 102 may be configured todivide image data of the anatomical object into a plurality of portions,project points from each of the plurality of portions to a transverseaxis, determine a threshold point from one of the projected points,determine a most lateral portion from the plurality of portion,determine a portion in each of the plurality of estimated shape modelsthat corresponds to the determined most lateral position, project pointsfrom the determined portion in each of the plurality of estimated shapemodels to the transverse axis, determining distances from the projectedpoints to the threshold point, and determine respective medializationvalues for each of the plurality of estimated shape models based on thedetermined distances.

Processing circuitry 102 may be configured to select an estimated shapemodel from the plurality of estimated shape models having (e.g.,associated with) a cost value of the respective cost values thatsatisfies a function for the cost value (e.g., less than thresholdvalue), including the example where the cost value is minimized (164).In this example, the estimated shape model having the cost value lessthan a threshold value is the result of the ER loop. Processingcircuitry 102 may generate information indicative of the pre-morbidshape of the anatomical object based on the selected estimated shapemodel (166). For example, the output of the ER loop may be an input intothe next operations of the ICP loop, and the ER loop and ICP loop mayrepeat until the cost value satisfies a threshold (e.g., less thanthreshold including minimized).

FIG. 17 is a flowchart illustrating an example method of operation inaccordance with one or more example techniques described in thisdisclosure. For example, FIG. 17 illustrates an example of the globalloop that includes the ICP loop and the ER loop. Processing circuitry102 may receive an aligned shape and shape model 106 (170). Techniquesto determine the aligned shape are described above and with FIG. 18.

Processing circuitry 102 perform the ICP loop (172). For example, toperform the ICP loop, processing circuitry 102 may be configured tomodify the aligned shape, compare the modified aligned shaped to shapemodel 106, and determine a cost value based on the comparison. As alsopart of the ICP loop, processing circuitry 102 may repeat the modifying,comparing, and determining until the cost value satisfies a thresholdvalue to generate a first order shape. The first order shape comprisesthe modified aligned shape associated with the cost value that satisfiesthe threshold value.

Processing circuitry 102 may perform the ER loop (174). To perform theER loop, processing circuitry 102 may receive the first order shape andshape model 106. Processing circuitry 102 may determine respective costvalues for each of a first set of plurality of estimated shape modelsbased on the first order shape and respective plurality of estimatedshape models. The plurality of estimated shape models may be generatedbased on the shape model 106. For example, processing circuitry 102 maydetermine value of Cf for each of the estimated shape models based onCf1, Cf2, and/or Cf3 as described above. Processing circuitry 102 maydetermine a first estimated shape model of the plurality of estimatedshape models associated with a cost value of the respective cost valuesthat satisfies a first threshold value. The estimated shape modelcomprises a first order shape model.

The first order shape model from the ER loop may be fed back to the ICPloop and the ICP loop may utilize the first order shape model and thefirst order shape generated from the previous ICP loop to generate asecond order shape. The second order shape is fed to the ER loop, andprocessing circuitry 102 utilizes the second order shape and the firstorder shape model and/or shape model 106 to generate a second ordershape model that is fed back to the ICP loop, and this process repeatsuntil the Cf value generated from the ER loop is below a threshold(e.g., minimized).

For example, processing circuitry 102 may repeatedly perform the ICPloop and the ER loop until a cost value generated from an iteration ofthe ER loop satisfies a second threshold value to determine thepre-morbid shape of the anatomical object (176). To repeatedly performthe ICP loop and the ER loop, processing circuitry 102 may be configuredto receive, for the ICP loop, an order shape model generated by aprevious ER loop and an order shape generated by a previous ICP loop,generate, by the ICP loop, a current order shape based on the ordershape model and the order shape, receive, for the ER loop, the currentorder shape and at least one of shape model or the order shape modelgenerated by the previous ER loop, generate a next set of plurality ofestimated shape models based on at least one of the shape model or theorder shape model generated by the previous ER loop, determinerespective cost values for each of the second set of plurality ofestimated shape models based on the order shape of the current ordershape and respective second set of plurality of estimated shape models,and determine a current estimated shape model of the second set ofplurality of estimated shape models associated with a cost value of therespective cost values that satisfies the first threshold value. Thecurrent estimated shape model is a current order shape model generatedby the ER loop that is fed back to the ICP loop.

FIG. 18 is a flowchart illustrating an example method of operation inaccordance with one or more example techniques described in thisdisclosure. For example, FIG. 18 illustrates an example manner in whichto determine initial aligned shape 138 and aligned shape 140 based on apatient coordinate system.

Processing circuitry 102 may determine a plane 130 through theanatomical object from the image data. Plane 130 is a plane that issubstantially through a middle of the anatomical object (180).Processing circuitry 102 may determine a normal (e.g., vector 132) ofplane 130 (182). In addition, processing circuitry 102 may determine atransverse axis 134 through representations of sagittal cuts (e.g., asillustrated in FIGS. 7A, 7B, 9A, and 9B) through the anatomical object(184). Transverse axis 134 is orthogonal to the normal (e.g., vector132).

Processing circuitry 102 may determine a patient coordinate system basedon the normal (e.g., vector 132) and the transverse axis 134 (186). Forexample, processing circuitry 102 may determine the third axis, wherevector 132 and transverse axis 134 form two of the three axes fordefining 3D space, based on the vector 132 and transverse axis 134 asdescribed above.

Processing circuitry 102 may generate an initial aligned shape thatinitially aligns the anatomical object from the image data to shapemodel 106 (188). For example, processing circuitry 102 may generate atransformation matrix and generate coordinates for anatomical objectsthat are in the coordinate system for shape model 106.

Processing circuitry 102 may generate information indicative of thepre-morbid shape of the anatomical object based on the initial alignedshape (190). For example, with initial aligned shape (e.g., initialaligned shape 138), processing circuitry 102 may iteratively adjustcoordinates of the initial aligned shape to rotate the initial alignedshape until a distance between the initial aligned shape and the shapemodel satisfies a threshold value to generate an aligned shape 140. Togenerate information indicative of the pre-morbid shape of theanatomical object, processing circuitry 102 may generate informationindicative of the pre-morbid shape based on the aligned shape 140. Forexample, aligned shape 140 may be an input into the global loop thatincludes the ICP loop and ER loop used to determine the pre-morbidshape.

The following describes one or more examples that may be used separatelyor in combination. The following examples should not be consideredlimiting.

Example 1. A method for determining a pre-morbid shape of an anatomicalobject of an orthopedic joint of a patient, the method comprisingdetermining respective medialization values for each of a plurality ofestimated shape models, wherein the plurality of estimated shape modelsis generated from a shape model, and wherein each of the medializationvalues is indicative of an amount by which each respective one of theestimated shape models is medialized relative to a current position ofthe anatomical object, determining respective cost values for each ofthe plurality of estimated shape models based at least in part on therespective determined medialization values for each of the plurality ofestimated shape models, selecting an estimated shape model from theplurality of estimated shape models having a cost value of therespective cost values that satisfies a function for the cost value, andgenerating information indicative of the pre-morbid shape of theanatomical object based on the selected estimated shape model.

Example 2. The method of example 1, further comprising determining ashape based on the shape model and an aligned shape generated from imagedata of the anatomical object, and determining respective distance andorientation difference values for each of the plurality of estimatedshape models, wherein each of the respective distance and orientationdifference values is indicative of a difference in distance andorientation between respective estimated shape models and the determinedshape, wherein determining respective cost values for each of theplurality of estimated shape models comprises determining respectivecost values for each of the plurality of estimated shape models based atleast in part on the respective determined medialization values for eachof the plurality of estimated shape models and the respective determineddistance and orientation difference values.

Example 3. The method of any of examples 1 and 2, further comprisingdetermining respective weighting values based on a likelihood of each ofthe respective estimated shape models being representative of thepre-morbid shape of the anatomical object, wherein determiningrespective cost values for each of the plurality of estimated shapemodels comprises determining respective cost values for each of theplurality of estimated shape models based at least in part on therespective determined medialization values for each of the plurality ofestimated shape models and one or more of the respective determineddistance and orientation difference values and the respective weightingvalues.

Example 4. The method of example 3, wherein determining the respectiveweighting values comprises performing

${\sum_{l}^{N}{\frac{\sum_{j}^{i}\lambda_{j}}{\sum_{j}^{N}{\lambda\; j}} \times b_{i}^{2}}},$

wherein N equals a number of modes used to build respective plurality ofestimated shape models, wherein λ equals eigenvalues of the shape model,and b equals a scaling factor used to determine respective plurality ofestimated shape models.

Example 5. The method of any of examples 2-4, wherein determiningrespective distance and orientation difference values for each of theplurality of estimated shape models comprises determining respectivedistances between corresponding points on respective estimated shapemodels and the determined shape, determining respective angulardifferences between normal vectors for the corresponding points onrespective estimated shape models and the determined shape, anddetermining respective distance and orientation difference values basedon the determine respective distances and the determined respectiveangular differences.

Example 6. The method of any of examples 1-5, wherein determiningrespective medialization values for each of the plurality of estimatedshape models comprises dividing image data of the anatomical object intoa plurality of portions, projecting points from each of the plurality ofportions to a transverse axis, determining a threshold point from one ofthe projected points, determining a most lateral portion from theplurality of portion, determining a portion in each of the plurality ofestimated shape models that corresponds to the determined most lateralposition, projecting points from the determined portion in each of theplurality of estimated shape models to the transverse axis, determiningdistances from the projected points to the threshold point, anddetermining respective medialization values for each of the plurality ofestimated shape models based on the determined distances.

Example 7. A device for determining a pre-morbid shape of an anatomicalobject of an orthopedic joint of a patient, the device comprising amemory configured to store one or more of a shape model and a pluralityof estimated shape model and processing circuitry configured todetermine respective medialization values for each of the plurality ofestimated shape models, wherein the plurality of estimated shape modelsis generated from the shape model, and wherein each of the medializationvalues is indicative of an amount by which each respective one of theestimated shape models is medialized relative to a current position ofthe anatomical object, determine respective cost values for each of theplurality of estimated shape models based at least in part on therespective determined medialization values for each of the plurality ofestimated shape models, select an estimated shape model from theplurality of estimated shape models having a cost value of therespective cost values that satisfies a function for the cost value, andgenerate information indicative of the pre-morbid shape of theanatomical object based on the selected estimated shape model.

Example 8. The device of example 7, wherein the processing circuitry isfurther configured to determine a shape based on the shape model and analigned shape generated from image data of the anatomical object, anddetermine respective distance and orientation difference values for eachof the plurality of estimated shape models, wherein each of therespective distance and orientation difference values is indicative of adifference in distance and orientation between respective estimatedshape models and the determined shape, wherein to determine respectivecost values for each of the plurality of estimated shape models, theprocessing circuitry is configured to determine respective cost valuesfor each of the plurality of estimated shape models based at least inpart on the respective determined medialization values for each of theplurality of estimated shape models and the respective determineddistance and orientation difference values.

Example 9. The device of any of examples 7 and 8, wherein the processingcircuitry is configured to determine respective weighting values basedon a likelihood of each of the respective estimated shape models beingrepresentative of the pre-morbid shape of the anatomical object, whereinto determine respective cost values for each of the plurality ofestimated shape models, the processing circuitry is configured todetermine respective cost values for each of the plurality of estimatedshape models based at least in part on the respective determinedmedialization values for each of the plurality of estimated shape modelsand one or more of the respective determined distance and orientationdifference values and the respective weighting values.

Example 10. The device of example 9, wherein to determine the respectiveweighting values, the processing circuitry is configured to perform

${\sum_{l}^{N}{\frac{\sum_{j}^{i}\lambda_{j}}{\sum_{j}^{N}{\lambda\; j}} \times b_{i}^{2}}},$

wherein N equals a number of modes used to build respective plurality ofestimated shape models, wherein λ equals eigenvalues of the shape model,and b equals a scaling factor used to determine respective plurality ofestimated shape models.

Example 11. The device of any of examples 8-10, wherein to determinerespective distance and orientation difference values for each of theplurality of estimated shape models, the processing circuitry isconfigured to determine respective distances between correspondingpoints on respective estimated shape models and the determined shape,determine respective angular differences between normal vectors for thecorresponding points on respective estimated shape models and thedetermined shape, and determine respective distance and orientationdifference values based on the determine respective distances and thedetermined respective angular differences.

Example 12. The device of any of examples 7-11, wherein to determinerespective medialization values for each of the plurality of estimatedshape models, the processing circuitry is configured to divide imagedata of the anatomical object into a plurality of portions, projectpoints from each of the plurality of portions to a transverse axis,determine a threshold point from one of the projected points, determinea most lateral portion from the plurality of portion, determine aportion in each of the plurality of estimated shape models thatcorresponds to the determined most lateral position, project points fromthe determined portion in each of the plurality of estimated shapemodels to the transverse axis, determine distances from the projectedpoints to the threshold point, and determine respective medializationvalues for each of the plurality of estimated shape models based on thedetermined distances.

Example 13. A computer-readable storage medium storing instructionsthereon that when executed cause one or more processors to determinerespective medialization values for each of a plurality of estimatedshape models, wherein the plurality of estimated shape models isgenerated from a shape model, and wherein each of the medializationvalues is indicative of an amount by which each respective one of theestimated shape models is medialized relative to a current position ofthe anatomical object, determine respective cost values for each of theplurality of estimated shape models based at least in part on therespective determined medialization values for each of the plurality ofestimated shape models, select an estimated shape model from theplurality of estimated shape models having a cost value of therespective cost values that satisfies a function for the cost value, andgenerate information indicative of a pre-morbid shape of an anatomicalobject based on the selected estimated shape model.

Example 14. The computer-readable storage medium of example 13, furthercomprising instructions that cause the one or more processors todetermine a shape based on the shape model and an aligned shapegenerated from image data of the anatomical object, and determinerespective distance and orientation difference values for each of theplurality of estimated shape models, wherein each of the respectivedistance and orientation difference values is indicative of a differencein distance and orientation between respective estimated shape modelsand the determined shape, wherein the instructions that cause the one ormore processors to determine respective cost values for each of theplurality of estimated shape models comprise instructions that cause theone or more processors to determine respective cost values for each ofthe plurality of estimated shape models based at least in part on therespective determined medialization values for each of the plurality ofestimated shape models and the respective determined distance andorientation difference values.

Example 15. The computer-readable storage medium of any of examples 13and 14, further comprising instructions that cause the one or moreprocessors to determine respective weighting values based on alikelihood of each of the respective estimated shape models beingrepresentative of the pre-morbid shape of the anatomical object, whereinthe instructions that cause the one or more processors to determinerespective cost values for each of the plurality of estimated shapemodels comprise instructions that cause the one or more processors todetermine respective cost values for each of the plurality of estimatedshape models based at least in part on the respective determinedmedialization values for each of the plurality of estimated shape modelsand one or more of the respective determined distance and orientationdifference values and the respective weighting values.

Example 16. The computer-readable storage medium of example 15, whereinthe instructions that cause the one or more processors to determine therespective weighting values comprise instructions that cause the one ormore processors to perform

${\sum_{l}^{N}{\frac{\sum_{j}^{i}\lambda_{j}}{\sum_{j}^{N}{\lambda\; j}} \times b_{i}^{2}}},$

wherein N equals a number of modes used to build respective plurality ofestimated shape models, wherein λ equals eigenvalues of the shape model,and b equals a scaling factor used to determine respective plurality ofestimated shape models.

Example 17. The computer-readable storage medium of any of examples14-16, wherein the instructions that cause the one or more processors todetermine respective distance and orientation difference values for eachof the plurality of estimated shape models comprise instructions thatcause the one or more processors to determine respective distancesbetween corresponding points on respective estimated shape models andthe determined shape, determine respective angular differences betweennormal vectors for the corresponding points on respective estimatedshape models and the determined shape, and determine respective distanceand orientation difference values based on the determine respectivedistances and the determined respective angular differences.

Example 18. The computer-readable storage medium of any of examples13-17, wherein the instructions that cause the one or more processors todetermine respective medialization values for each of the plurality ofestimated shape models comprise instructions that cause the one or moreprocessors to divide image data of the anatomical object into aplurality of portions, project points from each of the plurality ofportions to a transverse axis, determine a threshold point from one ofthe projected points, determine a most lateral portion from theplurality of portion, determine a portion in each of the plurality ofestimated shape models that corresponds to the determined most lateralposition, project points from the determined portion in each of theplurality of estimated shape models to the transverse axis, determinedistances from the projected points to the threshold point, anddetermine respective medialization values for each of the plurality ofestimated shape models based on the determined distances.

Example 19. A system for determining a pre-morbid shape of an anatomicalobject of an orthopedic joint of a patient, the system comprising meansfor determining respective medialization values for each of a pluralityof estimated shape models, wherein the plurality of estimated shapemodels is generated from a shape model, and wherein each of themedialization values is indicative of an amount by which each respectiveone of the estimated shape models is medialized relative to a currentposition of the anatomical object, means for determining respective costvalues for each of the plurality of estimated shape models based atleast in part on the respective determined medialization values for eachof the plurality of estimated shape models, means for selecting anestimated shape model from the plurality of estimated shape modelshaving a cost value of the respective cost values that satisfies afunction for the cost value, and means for generating informationindicative of the pre-morbid shape of the anatomical object based on theselected estimated shape model.

Example 20. The system of example 19, further comprising means fordetermining a shape based on one of the shape model and an aligned shapegenerated from image data of the anatomical object, and means fordetermining respective distance and orientation difference values foreach of the plurality of estimated shape models, wherein each of therespective distance and orientation difference values is indicative of adifference in distance and orientation between respective estimatedshape models and the determined shape, wherein the means for determiningrespective cost values for each of the plurality of estimated shapemodels comprises means for determining respective cost values for eachof the plurality of estimated shape models based at least in part on therespective determined medialization values for each of the plurality ofestimated shape models and the respective determined distance andorientation difference values.

Example 21. The system of any of examples 19 and 20, further comprisingmeans for determining respective weighting values based on a likelihoodof each of the respective estimated shape models being representative ofthe pre-morbid shape of the anatomical object, wherein the means fordetermining respective cost values for each of the plurality ofestimated shape models comprises means for determining respective costvalues for each of the plurality of estimated shape models based atleast in part on the respective determined medialization values for eachof the plurality of estimated shape models and one or more of therespective determined distance and orientation difference values and therespective weighting values.

Example 22. The system of example 21, wherein the means for determiningthe respective weighting values comprises means for performing

${\sum_{l}^{N}{\frac{\sum_{j}^{i}\lambda_{j}}{\sum_{j}^{N}{\lambda\; j}} \times b_{i}^{2}}},$

wherein N equals a number of modes used to build respective plurality ofestimated shape models, wherein λ equals eigenvalues of the shape model,and b equals a scaling factor used to determine respective plurality ofestimated shape models.

Example 23. The system of any of examples 20-22, wherein the means fordetermining respective distance and orientation difference values foreach of the plurality of estimated shape models comprises means fordetermining respective distances between corresponding points onrespective estimated shape models and the determined shape, means fordetermining respective angular differences between normal vectors forthe corresponding points on respective estimated shape models and thedetermined shape, and means for determining respective distance andorientation difference values based on the determine respectivedistances and the determined respective angular differences.

Example 24. The system of any of examples 19-23, wherein the means fordetermining respective medialization values for each of the plurality ofestimated shape models comprises means for dividing image data of theanatomical object into a plurality of portions, means for projectingpoints from each of the plurality of portions to a transverse axis,means for determining a threshold point from one of the projectedpoints, means for determining a most lateral portion from the pluralityof portion, means for determining a portion in each of the plurality ofestimated shape models that corresponds to the determined most lateralposition, means for projecting points from the determined portion ineach of the plurality of estimated shape models to the transverse axis,means for determining distances from the projected points to thethreshold point, and means for determining respective medializationvalues for each of the plurality of estimated shape models based on thedetermined distances.

Example 25. A method for determining a pre-morbid shape of an anatomicalobject of an orthopedic joint of a patient, the method comprisingreceiving an aligned shape and a shape model, performing an iterativeclosest point (ICP) loop, wherein performing the ICP loop comprisesmodifying the aligned shape, comparing the modified aligned shape to theshape model, determining a cost value based on the comparison, andrepeating the modifying, comparing, and determining until the cost valuesatisfies a threshold value to generate a first order shape, wherein thefirst order shape comprises the modified aligned shape associated withthe cost value that satisfies the threshold value, performing an elasticregistration (ER) loop, wherein performing the ER loop comprisesreceiving the first order shape and the shape model, determiningrespective cost values for each of a first set of plurality of estimatedshape models based on the first order shape and respective plurality ofestimated shape models, wherein the plurality of estimated shape modelsis generated based on the shape model, and determining a first estimatedshape model of the plurality of estimated shape models associated with acost value of the respective cost values that satisfies a firstthreshold value, wherein the estimated shape model comprises a firstorder shape model, and repeatedly performing the ICP loop and the ERloop until a cost value generated from an iteration of the ER loopsatisfies a second threshold value to determine the pre-morbid shape ofthe anatomical object, wherein repeatedly performing the ICP loop andthe ER loop comprises receiving, for the ICP loop, an order shape modelgenerated by a previous ER loop and an order shape generated by aprevious ICP loop, generating, by the ICP loop, a current order shapebased on the order shape model and the order shape, receiving, for theER loop, the current order shape and at least one of shape model or theorder shape model generated by the previous ER loop, generating a nextset of plurality of estimated shape models based on at least one of theshape model or the order shape model generated by the previous ER loop,determining respective cost values for each of the second set ofplurality of estimated shape models based on the order shape of thecurrent order shape and respective second set of plurality of estimatedshape models, and determining a current estimated shape model of thesecond set of plurality of estimated shape models associated with a costvalue of the respective cost values that satisfies the first thresholdvalue, wherein the current estimated shape model comprises a currentorder shape model generated by the ER loop.

Example 26. The method of example 25, wherein determining respectivecost values for each of the second set of plurality of estimated shapemodels comprises determining respective distance and orientationdifference values for each of the second set of plurality of estimatedshape models, wherein each of the respective distance and orientationdifference values is indicative of a difference in distance andorientation between respective second set of estimated shape models andthe current order shape, determining respective medialization values foreach of the second set of plurality of estimated shape models, whereineach of the medialization values is indicative of an amount by whicheach respective one of the second set of plurality of estimated shapemodels is medialized relative to a current position of the anatomicalobject, and determining respective cost values based on the respectivedistance and orientation difference values and the respectivemedialization values.

Example 27. The method of example 26, further comprising determining arespective weighting values based on a likelihood of each of therespective second set of the plurality of estimated shape models beingrepresentative of the pre-morbid shape of the anatomical object, whereindetermining respective cost values for each of the second set of theplurality of estimated shape models comprises determining respectivecost values for each of the second set of the plurality of estimatedshape models based at least in part on the respective distance andorientation difference values, the respective medialization values, andthe respective weighting values.

Example 28. The method of any of examples 25-27, further comprising anycombination of examples 1-6.

Example 29. A device for determining a pre-morbid shape of an anatomicalobject of an orthopedic joint of a patient, the device comprising amemory configured to store a shape model and processing circuitryconfigured to receive an aligned shape and a shape model, perform aniterative closest point (ICP) loop, wherein to perform the ICP loop, theprocessing circuitry is configured to modify the aligned shape, comparethe modified aligned shape to the shape model, determine a cost valuebased on the comparison, and repeat the modifying, comparing, anddetermining until the cost value satisfies a threshold value to generatea first order shape, wherein the first order shape comprises themodified aligned shape associated with the cost value that satisfies thethreshold value, perform an elastic registration (ER) loop, wherein toperform the ER loop, the processing circuitry is configured to receivethe first order shape and the shape model, determine respective costvalues for each of a first set of plurality of estimated shape modelsbased on the first order shape and respective plurality of estimatedshape models, wherein the plurality of estimated shape models isgenerated based on the shape model, and determine a first estimatedshape model of the plurality of estimated shape models associated with acost value of the respective cost values that satisfies a firstthreshold value, wherein the estimated shape model comprises a firstorder shape model, and repeatedly perform the ICP loop and the ER loopuntil a cost value generated from an iteration of the ER loop satisfiesa second threshold value to determine the pre-morbid shape of theanatomical object, wherein to repeatedly perform the ICP loop and the ERloop, the processing circuitry is configured to receive, for the ICPloop, an order shape model generated by a previous ER loop and an ordershape generated by a previous ICP loop, generate, by the ICP loop, acurrent order shape based on the order shape model and the order shape,receive, for the ER loop, the current order shape and at least one ofshape model or the order shape model generated by the previous ER loop,generate a next set of plurality of estimated shape models based on atleast one of the shape model or the order shape model generated by theprevious ER loop, determine respective cost values for each of thesecond set of plurality of estimated shape models based on the ordershape of the current order shape and respective second set of pluralityof estimated shape models, and determine a current estimated shape modelof the second set of plurality of estimated shape models associated witha cost value of the respective cost values that satisfies the firstthreshold value, wherein the current estimated shape model comprises acurrent order shape model generated by the ER loop.

Example 30. The device of example 29, wherein to determine respectivecost values for each of the second set of plurality of estimated shapemodels, the processing circuitry is configured to determine respectivedistance and orientation difference values for each of the second set ofplurality of estimated shape models, wherein each of the respectivedistance and orientation difference values is indicative of a differencein distance and orientation between respective second set of estimatedshape models and the current order shape, determine respectivemedialization values for each of the second set of plurality ofestimated shape models, wherein each of the medialization values isindicative of an amount by which each respective one of the second setof plurality of estimated shape models is medialized relative to acurrent position of the anatomical object, and determine respective costvalues based on the respective distance and orientation differencevalues and the respective medialization values.

Example 31. The device of example 30, wherein the processing circuitryis configured to determine a respective weighting values based on alikelihood of each of the respective second set of the plurality ofestimated shape models being representative of the pre-morbid shape ofthe anatomical object, wherein to determine respective cost values foreach of the second set of the plurality of estimated shape models, theprocessing circuitry is configured to determine respective cost valuesfor each of the second set of the plurality of estimated shape modelsbased at least in part on the respective distance and orientationdifference values, the respective medialization values, and therespective weighting values.

Example 32. The device of any of examples 29-31, wherein the processingcircuitry is configured to perform the features of any of examples 7-12.

Example 33. A computer-readable storage medium storing instructionsthereon that when executed cause one or more processors to receive analigned shape and a shape model, perform an iterative closest point(ICP) loop, wherein the instructions that cause the one or moreprocessors to perform the ICP loop comprise instructions that cause theone or more processors to modify the aligned shape, compare the modifiedaligned shape to the shape model, determine a cost value based on thecomparison, and repeat the modifying, comparing, and determining untilthe cost value satisfies a threshold value to generate a first ordershape, wherein the first order shape comprises the modified alignedshape associated with the cost value that satisfies the threshold value,perform an elastic registration (ER) loop, wherein the instructions thatcause the one or more processors to perform the ER loop compriseinstructions that cause the one or more processors to receive the firstorder shape and the shape model, determine respective cost values foreach of a first set of plurality of estimated shape models based on thefirst order shape and respective plurality of estimated shape models,wherein the plurality of estimated shape models is generated based onthe shape model, and determine a first estimated shape model of theplurality of estimated shape models associated with a cost value of therespective cost values that satisfies a first threshold value, whereinthe estimated shape model comprises a first order shape model, andrepeatedly perform the ICP loop and the ER loop until a cost valuegenerated from an iteration of the ER loop satisfies a second thresholdvalue to determine a pre-morbid shape of an anatomical object, whereinthe instructions that cause the one or more processors to repeatedlyperform the ICP loop and the ER loop comprise instructions that causethe one or more processors to receive, for the ICP loop, an order shapemodel generated by a previous ER loop and an order shape generated by aprevious ICP loop, generate, by the ICP loop, a current order shapebased on the order shape model and the order shape, receive, for the ERloop, the current order shape and at least one of shape model or theorder shape model generated by the previous ER loop, generate a next setof plurality of estimated shape models based on at least one of theshape model or the order shape model generated by the previous ER loop,determine respective cost values for each of the second set of pluralityof estimated shape models based on the order shape of the current ordershape and respective second set of plurality of estimated shape models,and determine a current estimated shape model of the second set ofplurality of estimated shape models associated with a cost value of therespective cost values that satisfies the first threshold value, whereinthe current estimated shape model comprises a current order shape modelgenerated by the ER loop.

Example 34. The computer-readable storage medium of example 33, whereinthe instructions that cause the one or more processors to determinerespective cost values for each of the second set of plurality ofestimated shape models comprise instructions that cause the one or moreprocessors to determine respective distance and orientation differencevalues for each of the second set of plurality of estimated shapemodels, wherein each of the respective distance and orientationdifference values is indicative of a difference in distance andorientation between respective second set of estimated shape models andthe current order shape, determine respective medialization values foreach of the second set of plurality of estimated shape models, whereineach of the medialization values is indicative of an amount by whicheach respective one of the second set of plurality of estimated shapemodels is medialized relative to a current position of the anatomicalobject, and determine respective cost values based on the respectivedistance and orientation difference values and the respectivemedialization values.

Example 35. The computer-readable storage medium of example 34, furthercomprising instructions that cause the one or more processors todetermine a respective weighting values based on a likelihood of each ofthe respective second set of the plurality of estimated shape modelsbeing representative of the pre-morbid shape of the anatomical object,wherein the instructions that cause the one or more processors todetermine respective cost values for each of the second set of theplurality of estimated shape models comprise instructions that cause theone or more processors to determine respective cost values for each ofthe second set of the plurality of estimated shape models based at leastin part on the respective distance and orientation difference values,the respective medialization values, and the respective weightingvalues.

Example 36. The computer-readable storage medium of any of examples33-35, further comprising instructions that cause the one or moreprocessors to perform the features of any combination of examples 13-18.

Example 37. A system for determining a pre-morbid shape of an anatomicalobject of an orthopedic joint of a patient, the system comprising meansfor receiving an aligned shape and a shape model, means for performingan iterative closest point (ICP) loop, wherein the means for performingthe ICP loop comprises means for modifying the aligned shape, means forcomparing the modified aligned shape to the shape model, means fordetermining a cost value based on comparison, and means for repeatingthe modifying, comparing, and determining until the cost value satisfiesa threshold value to generate a first order shape, wherein the firstorder shape comprises the modified aligned shape associated with thecost value that satisfies the threshold value, means for performing anelastic registration (ER) loop, wherein the means for performing the ERloop comprises means for receiving the first order shape and the shapemodel, means for determining respective cost values for each of a firstset of plurality of estimated shape models based on the first ordershape and respective plurality of estimated shape models, wherein theplurality of estimated shape models is generated based on the shapemodel, and means for determining a first estimated shape model of theplurality of estimated shape models associated with a cost value of therespective cost values that satisfies a first threshold value, whereinthe estimated shape model comprises a first order shape model, and meansfor repeatedly performing the ICP loop and the ER loop until a costvalue generated from an iteration of the ER loop satisfies a secondthreshold value to determine the pre-morbid shape of the anatomicalobject, wherein the means for repeatedly performing the ICP loop and theER loop comprises means for receiving, for the ICP loop, an order shapemodel generated by a previous ER loop and an order shape generated by aprevious ICP loop, means for generating, by the ICP loop, a currentorder shape based on the order shape model and the order shape, meansfor receiving, for the ER loop, the current order shape and at least oneof shape model or the order shape model generated by the previous ERloop, means for generating a next set of plurality of estimated shapemodels based on at least one of the shape model or the order shape modelgenerated by the previous ER loop, means for determining respective costvalues for each of the second set of plurality of estimated shape modelsbased on the order shape of the current order shape and respectivesecond set of plurality of estimated shape models, and means fordetermining a current estimated shape model of the second set ofplurality of estimated shape models associated with a cost value of therespective cost values that satisfies the first threshold value, whereinthe current estimated shape model comprises a current order shape modelgenerated by the ER loop.

Example 38. The system of example 37, wherein the means for determiningrespective cost values for each of the second set of plurality ofestimated shape models comprises means for determining respectivedistance and orientation difference values for each of the second set ofplurality of estimated shape models, wherein each of the respectivedistance and orientation difference values is indicative of a differencein distance and orientation between respective second set of estimatedshape models and the current order shape, means for determiningrespective medialization values for each of the second set of pluralityof estimated shape models, wherein each of the medialization values isindicative of an amount by which each respective one of the second setof plurality of estimated shape models is medialized relative to acurrent position of the anatomical object, and means for determiningrespective cost values based on the respective distance and orientationdifference values and the respective medialization values.

Example 39. The system of example 38, further comprising means fordetermining a respective weighting values based on a likelihood of eachof the respective second set of the plurality of estimated shape modelsbeing representative of the pre-morbid shape of the anatomical object,wherein the means for determining respective cost values for each of thesecond set of the plurality of estimated shape models comprises meansfor determining respective cost values for each of the second set of theplurality of estimated shape models based at least in part on therespective distance and orientation difference values, the respectivemedialization values, and the respective weighting values.

Example 40. The system of any of examples 37-39, further comprisingmeans for performing any combination of examples 19-24.

Example 41. A method for determining a pre-morbid shape of an anatomicalobject of an orthopedic joint of a patient, the method comprisingdetermining a plane through the anatomical object from the image data,wherein the plane is a plane that is substantially through a middle ofthe anatomical object, determining a normal of the plane, determining atransverse axis through representations of sagittal cuts through theanatomical object, wherein the transverse axis is orthogonal to thenormal, determining a patient coordinate system based on the normal andthe transverse axis, generating an initial aligned shape that initiallyaligns the anatomical object from the image data to a shape model, andgenerating information indicative of the pre-morbid shape of theanatomical object based on the initial aligned shape.

Example 42. The method of example 41, further comprising iterativelyadjusting coordinates of the initial aligned shape to rotate the initialaligned shape until a distance between the initial aligned shape and theshape model satisfies a threshold value to generate an aligned shape,wherein generating information indicative of the pre-morbid shape of theanatomical object comprises generating information indicative of thepre-morbid shape based on the aligned shape.

Example 43. The method of any of examples 41 and 42, wherein generatinginformation indicative of the pre-morbid shape comprises generatinginformation indicative of the pre-morbid shape based on features of anyof examples 1-6 and 25-28.

Example 44. A device for determining a pre-morbid shape of an anatomicalobject of an orthopedic joint of a patient, the device comprising memoryconfigured to store image data and processing circuitry configured todetermine a plane through the anatomical object from the image data,wherein the plane is a plane that is substantially through a middle ofthe anatomical object, determine a normal of the plane, determine atransverse axis through representations of sagittal cuts through theanatomical object, wherein the transverse axis is orthogonal to thenormal, determine a patient coordinate system based on the normal andthe transverse axis, generate an initial aligned shape that initiallyaligns the anatomical object from the image data to a shape model, andgenerate information indicative of the pre-morbid shape of theanatomical object based on the initial aligned shape.

Example 45. The device of example 44, wherein the processing circuitryis configured to iteratively adjust coordinates of the initial alignedshape to rotate the initial aligned shape until a distance between theinitial aligned shape and the shape model satisfies a threshold value togenerate an aligned shape, wherein to generate information indicative ofthe pre-morbid shape of the anatomical object, the processing circuitryis configured to generate information indicative of the pre-morbid shapebased on the aligned shape.

Example 46. The device of any of examples 44 and 45, wherein to generateinformation indicative of the pre-morbid shape, the processing circuitryis configured to generate information indicative of the pre-morbid shapebased on features of any of examples 7-12 and 29-32.

Example 47. A computer-readable storage medium storing instructions thatwhen executed cause one or more processors to determine a plane throughthe anatomical object from the image data, wherein the plane is a planethat is substantially through a middle of the anatomical object,determine a normal of the plane, determine a transverse axis throughrepresentations of sagittal cuts through the anatomical object, whereinthe transverse axis is orthogonal to the normal, determine a patientcoordinate system based on the normal and the transverse axis, generatean initial aligned shape that initially aligns the anatomical objectfrom the image data to a shape model, and generate informationindicative of a pre-morbid shape of an anatomical object based on theinitial aligned shape.

Example 48. The computer-readable storage medium of example 47, furthercomprising instructions that cause the one or more processors toiteratively adjust coordinates of the initial aligned shape to rotatethe initial aligned shape until a distance between the initial alignedshape and the shape model satisfies a threshold value to generate analigned shape, wherein the instructions that cause the one or moreprocessors to generate information indicative of the pre-morbid shape ofthe anatomical object comprise instructions that cause the one or moreprocessors to generate information indicative of the pre-morbid shapebased on the aligned shape.

Example 49. The computer-readable storage medium of any of examples 47and 48, wherein the instructions that cause the one or more processorsto generate information indicative of the pre-morbid shape compriseinstructions that cause the one or more processors to generateinformation indicative of the pre-morbid shape based on features of anyof examples 13-18 and 33-36.

Example 50. A system for determining a pre-morbid shape of an anatomicalobject of an orthopedic joint of a patient, the system comprising meansfor determining a plane through the anatomical object from the imagedata, wherein the plane is a plane that is substantially through amiddle of the anatomical object, means for determining a normal of theplane, means for determining a transverse axis through representationsof sagittal cuts through the anatomical object, wherein the transverseaxis is orthogonal to the normal, means for determining a patientcoordinate system based on the normal and the transverse axis, means forgenerating an initial aligned shape that initially aligns the anatomicalobject from the image data to a shape model, and means for generatinginformation indicative of the pre-morbid shape of the anatomical objectbased on the initial aligned shape.

Example 51. The system of example 50, further comprising means foriteratively adjusting coordinates of the initial aligned shape to rotatethe initial aligned shape until a distance between the initial alignedshape and the shape model satisfies a threshold value to generate analigned shape, wherein the means for generating information indicativeof the pre-morbid shape of the anatomical object comprises means forgenerating information indicative of the pre-morbid shape based on thealigned shape.

Example 52. The system of any of examples 50 and 51, wherein the meansfor generating information indicative of the pre-morbid shape comprisesmeans for generating information indicative of the pre-morbid shapebased on features of any of examples 19-24 and 37-40.

While the techniques been disclosed with respect to a limited number ofexamples, those skilled in the art, having the benefit of thisdisclosure, will appreciate numerous modifications and variations therefrom. For instance, it is contemplated that any reasonable combinationof the described examples may be performed. It is intended that theappended claims cover such modifications and variations as fall withinthe true spirit and scope of the invention.

It is to be recognized that depending on the example, certain acts orevents of any of the techniques described herein can be performed in adifferent sequence, may be added, merged, or left out altogether (e.g.,not all described acts or events are necessary for the practice of thetechniques). Moreover, in certain examples, acts or events may beperformed concurrently, e.g., through multi-threaded processing,interrupt processing, or multiple processors, rather than sequentially.

In one or more examples, the functions described may be implemented inhardware, software, firmware, or any combination thereof. If implementedin software, the functions may be stored on or transmitted over as oneor more instructions or code on a computer-readable medium and executedby a hardware-based processing unit. Computer-readable media may includecomputer-readable storage media, which corresponds to a tangible mediumsuch as data storage media, or communication media including any mediumthat facilitates transfer of a computer program from one place toanother, e.g., according to a communication protocol. In this manner,computer-readable media generally may correspond to (1) tangiblecomputer-readable storage media which is non-transitory or (2) acommunication medium such as a signal or carrier wave. Data storagemedia may be any available media that can be accessed by one or morecomputers or one or more processors to retrieve instructions, codeand/or data structures for implementation of the techniques described inthis disclosure. A computer program product may include acomputer-readable medium.

By way of example, and not limitation, such computer-readable storagemedia can comprise RAM, ROM, EEPROM, CD-ROM or other optical diskstorage, magnetic disk storage, or other magnetic storage devices, flashmemory, or any other medium that can be used to store desired programcode in the form of instructions or data structures and that can beaccessed by a computer. Also, any connection is properly termed acomputer-readable medium. For example, if instructions are transmittedfrom a website, server, or other remote source using a coaxial cable,fiber optic cable, twisted pair, digital subscriber line (DSL), orwireless technologies such as infrared, radio, and microwave, then thecoaxial cable, fiber optic cable, twisted pair, DSL, or wirelesstechnologies such as infrared, radio, and microwave are included in thedefinition of medium. It should be understood, however, thatcomputer-readable storage media and data storage media do not includeconnections, carrier waves, signals, or other transitory media, but areinstead directed to non-transitory, tangible storage media. Disk anddisc, as used herein, includes compact disc (CD), laser disc, opticaldisc, digital versatile disc (DVD), floppy disk and Blu-ray disc, wheredisks usually reproduce data magnetically, while discs reproduce dataoptically with lasers. Combinations of the above should also be includedwithin the scope of computer-readable media.

Operations described in this disclosure may be performed by one or moreprocessors, which may be implemented as fixed-function processingcircuits, programmable circuits, or combinations thereof, such as one ormore digital signal processors (DSPs), general purpose microprocessors,application specific integrated circuits (ASICs), field programmablegate arrays (FPGAs), or other equivalent integrated or discrete logiccircuitry. Fixed-function circuits refer to circuits that provideparticular functionality and are preset on the operations that can beperformed. Programmable circuits refer to circuits that can programmedto perform various tasks and provide flexible functionality in theoperations that can be performed. For instance, programmable circuitsmay execute instructions specified by software or firmware that causethe programmable circuits to operate in the manner defined byinstructions of the software or firmware. Fixed-function circuits mayexecute software instructions (e.g., to receive parameters or outputparameters), but the types of operations that the fixed-functioncircuits perform are generally immutable. Accordingly, the terms“processor” and “processing circuitry,” as used herein may refer to anyof the foregoing structures or any other structure suitable forimplementation of the techniques described herein.

Various examples have been described. These and other examples arewithin the scope of the following claims.

1. A method for determining a pre-morbid shape of an anatomical objectof an orthopedic joint of a patient, the method comprising: receiving analigned shape and a shape model; performing an iterative closest point(ICP) loop, wherein performing the ICP loop comprises: modifying thealigned shape; comparing the modified aligned shape to the shape model;determining a cost value based on the comparison; and repeating themodifying, comparing, and determining until the cost value satisfies athreshold value to generate a first order shape, wherein the first ordershape comprises the modified aligned shape associated with the costvalue that satisfies the threshold value; performing an elasticregistration (ER) loop, wherein performing the ER loop comprises:receiving the first order shape and the shape model; determiningrespective cost values for each of a first set of plurality of estimatedshape models based on the first order shape and respective plurality ofestimated shape models, wherein the plurality of estimated shape modelsis generated based on the shape model; and determining a first estimatedshape model of the plurality of estimated shape models associated with acost value of the respective cost values that satisfies a firstthreshold value, wherein the estimated shape model comprises a firstorder shape model; and repeatedly performing the ICP loop and the ERloop until a cost value generated from an iteration of the ER loopsatisfies a second threshold value to determine the pre-morbid shape ofthe anatomical object, wherein repeatedly performing the ICP loop andthe ER loop comprises: receiving, for the ICP loop, an order shape modelgenerated by a previous ER loop and an order shape generated by aprevious ICP loop; generating, by the ICP loop, a current order shapebased on the order shape model and the order shape; receiving, for theER loop, the current order shape and at least one of shape model or theorder shape model generated by the previous ER loop; generating a nextset of plurality of estimated shape models based on at least one of theshape model or the order shape model generated by the previous ER loop;determining respective cost values for each of the second set ofplurality of estimated shape models based on the order shape of thecurrent order shape and respective second set of plurality of estimatedshape models; and determining a current estimated shape model of thesecond set of plurality of estimated shape models associated with a costvalue of the respective cost values that satisfies the first thresholdvalue, wherein the current estimated shape model comprises a currentorder shape model generated by the ER loop.
 2. The method of claim 1,wherein determining respective cost values for each of the second set ofplurality of estimated shape models comprises: determining respectivedistance and orientation difference values for each of the second set ofplurality of estimated shape models, wherein each of the respectivedistance and orientation difference values is indicative of a differencein distance and orientation between respective second set of estimatedshape models and the current order shape; determining respectivemedialization values for each of the second set of plurality ofestimated shape models, wherein each of the medialization values isindicative of an amount by which each respective one of the second setof plurality of estimated shape models is medialized relative to acurrent position of the anatomical object; and determining respectivecost values based on the respective distance and orientation differencevalues and the respective medialization values.
 3. The method of claim2, further comprising: determining a respective weighting values basedon a likelihood of each of the respective second set of the plurality ofestimated shape models being representative of the pre-morbid shape ofthe anatomical object, wherein determining respective cost values foreach of the second set of the plurality of estimated shape modelscomprises determining respective cost values for each of the second setof the plurality of estimated shape models based at least in part on therespective distance and orientation difference values, the respectivemedialization values, and the respective weighting values.
 4. The methodof claim 3, wherein determining the respective weighting valuescomprises performing$\sum_{l}^{N}{\frac{\sum_{j}^{i}\lambda_{j}}{\sum_{j}^{N}{\lambda\; j}} \times {b_{i}^{2}.}}$wherein N equals a number of modes used to build respective second setof plurality of estimated shape models, wherein λ equals eigenvalues ofthe shape model, and b equals a scaling factor used to determinerespective second set of plurality of estimated shape models.
 5. Themethod of claim 2, wherein determining respective distance andorientation difference values for each of the second set of plurality ofestimated shape models comprises: determining respective distancesbetween corresponding points on respective second set of plurality ofestimated shape models and the determined shape; determining respectiveangular differences between normal vectors for the corresponding pointson respective second set of plurality of estimated shape models and thedetermined shape; and determining respective distance and orientationdifference values based on the determine respective distances and thedetermined respective angular differences.
 6. The method of claim 2,wherein determining respective medialization values for each of thesecond set of plurality of estimated shape models comprises: dividingimage data of the anatomical object into a plurality of portions;projecting points from each of the plurality of portions to a transverseaxis; determining a threshold point from one of the projected points;determining a most lateral portion from the plurality of portion;determining a portion in each of the second set of plurality ofestimated shape models that corresponds to the determined most lateralposition; projecting points from the determined portion in each of thesecond set of plurality of estimated shape models to the transverseaxis; determining distances from the projected points to the thresholdpoint; and determining respective medialization values for each of thesecond set of plurality of estimated shape models based on thedetermined distances.
 7. A device for determining a pre-morbid shape ofan anatomical object of an orthopedic joint of a patient, the devicecomprising: a memory configured to store a shape model; and processingcircuitry configured to: receive an aligned shape and a shape model;perform an iterative closest point (ICP) loop, wherein to perform theICP loop, the processing circuitry is configured to: modify the alignedshape; compare the modified aligned shape to the shape model; determinea cost value based on the comparison; and repeat the modifying,comparing, and determining until the cost value satisfies a thresholdvalue to generate a first order shape, wherein the first order shapecomprises the modified aligned shape associated with the cost value thatsatisfies the threshold value; perform an elastic registration (ER)loop, wherein to perform the ER loop, the processing circuitry isconfigured to: receive the first order shape and the shape model;determine respective cost values for each of a first set of plurality ofestimated shape models based on the first order shape and respectiveplurality of estimated shape models, wherein the plurality of estimatedshape models is generated based on the shape model; and determine afirst estimated shape model of the plurality of estimated shape modelsassociated with a cost value of the respective cost values thatsatisfies a first threshold value, wherein the estimated shape modelcomprises a first order shape model; and repeatedly perform the ICP loopand the ER loop until a cost value generated from an iteration of the ERloop satisfies a second threshold value to determine the pre-morbidshape of the anatomical object, wherein to repeatedly perform the ICPloop and the ER loop, the processing circuitry is configured to:receive, for the ICP loop, an order shape model generated by a previousER loop and an order shape generated by a previous ICP loop; generate,by the ICP loop, a current order shape based on the order shape modeland the order shape; receive, for the ER loop, the current order shapeand at least one of shape model or the order shape model generated bythe previous ER loop; generate a next set of plurality of estimatedshape models based on at least one of the shape model or the order shapemodel generated by the previous ER loop; determine respective costvalues for each of the second set of plurality of estimated shape modelsbased on the order shape of the current order shape and respectivesecond set of plurality of estimated shape models; and determine acurrent estimated shape model of the second set of plurality ofestimated shape models associated with a cost value of the respectivecost values that satisfies the first threshold value, wherein thecurrent estimated shape model comprises a current order shape modelgenerated by the ER loop.
 8. The device of claim 7, wherein to determinerespective cost values for each of the second set of plurality ofestimated shape models, the processing circuitry is configured to:determine respective distance and orientation difference values for eachof the second set of plurality of estimated shape models, wherein eachof the respective distance and orientation difference values isindicative of a difference in distance and orientation betweenrespective second set of estimated shape models and the current ordershape; determine respective medialization values for each of the secondset of plurality of estimated shape models, wherein each of themedialization values is indicative of an amount by which each respectiveone of the second set of plurality of estimated shape models ismedialized relative to a current position of the anatomical object; anddetermine respective cost values based on the respective distance andorientation difference values and the respective medialization values.9. The device of claim 8, wherein the processing circuitry is configuredto: determine a respective weighting values based on a likelihood ofeach of the respective second set of the plurality of estimated shapemodels being representative of the pre-morbid shape of the anatomicalobject, wherein to determine respective cost values for each of thesecond set of the plurality of estimated shape models, the processingcircuitry is configured to determine respective cost values for each ofthe second set of the plurality of estimated shape models based at leastin part on the respective distance and orientation difference values,the respective medialization values, and the respective weightingvalues.
 10. The device of claim 9, wherein to determine the respectiveweighting values, the processing circuitry is configured to perform${\sum_{l}^{N}{\frac{\sum_{j}^{i}\lambda_{j}}{\sum_{j}^{N}{\lambda\; j}} \times b_{i}^{2}}},$wherein N equals a number of modes used to build respective second setof plurality of estimated shape models, wherein λ equals eigenvalues ofthe shape model, and b equals a scaling factor used to determinerespective second set of plurality of estimated shape models.
 11. Thedevice of claim 8, wherein to determine respective distance andorientation difference values for each of the second set of plurality ofestimated shape models, the processing circuitry is configured to:determine respective distances between corresponding points onrespective second set of plurality of estimated shape models and thedetermined shape; determine respective angular differences betweennormal vectors for the corresponding points on respective second set ofplurality of estimated shape models and the determined shape; anddetermine respective distance and orientation difference values based onthe determine respective distances and the determined respective angulardifferences.
 12. The device of claim 8, wherein to determine respectivemedialization values for each of the second set of plurality ofestimated shape models, the processing circuitry is configured to:divide image data of the anatomical object into a plurality of portions;project points from each of the plurality of portions to a transverseaxis; determine a threshold point from one of the projected points;determine a most lateral portion from the plurality of portion;determine a portion in each of the second set of plurality of estimatedshape models that corresponds to the determined most lateral position;project points from the determined portion in each of the second set ofplurality of estimated shape models to the transverse axis; determinedistances from the projected points to the threshold point; anddetermine respective medialization values for each of the second set ofplurality of estimated shape models based on the determined distances.13. A computer-readable storage medium storing instructions thereon thatwhen executed cause one or more processors to: receive an aligned shapeand a shape model; perform an iterative closest point (ICP) loop,wherein the instructions that cause the one or more processors toperform the ICP loop comprise instructions that cause the one or moreprocessors to: modify the aligned shape; compare the modified alignedshape to the shape model; determine a cost value based on thecomparison; and repeat the modifying, comparing, and determining untilthe cost value satisfies a threshold value to generate a first ordershape, wherein the first order shape comprises the modified alignedshape associated with the cost value that satisfies the threshold value;perform an elastic registration (ER) loop, wherein the instructions thatcause the one or more processors to perform the ER loop compriseinstructions that cause the one or more processors to: receive the firstorder shape and the shape model; determine respective cost values foreach of a first set of plurality of estimated shape models based on thefirst order shape and respective plurality of estimated shape models,wherein the plurality of estimated shape models is generated based onthe shape model; and determine a first estimated shape model of theplurality of estimated shape models associated with a cost value of therespective cost values that satisfies a first threshold value, whereinthe estimated shape model comprises a first order shape model; andrepeatedly perform the ICP loop and the ER loop until a cost valuegenerated from an iteration of the ER loop satisfies a second thresholdvalue to determine a pre-morbid shape of an anatomical object, whereinthe instructions that cause the one or more processors to repeatedlyperform the ICP loop and the ER loop comprise instructions that causethe one or more processors to: receive, for the ICP loop, an order shapemodel generated by a previous ER loop and an order shape generated by aprevious ICP loop; generate, by the ICP loop, a current order shapebased on the order shape model and the order shape; receive, for the ERloop, the current order shape and at least one of shape model or theorder shape model generated by the previous ER loop; generate a next setof plurality of estimated shape models based on at least one of theshape model or the order shape model generated by the previous ER loop;determine respective cost values for each of the second set of pluralityof estimated shape models based on the order shape of the current ordershape and respective second set of plurality of estimated shape models;and determine a current estimated shape model of the second set ofplurality of estimated shape models associated with a cost value of therespective cost values that satisfies the first threshold value, whereinthe current estimated shape model comprises a current order shape modelgenerated by the ER loop.
 14. The computer-readable storage medium ofclaim 13, wherein the instructions that cause the one or more processorsto determine respective cost values for each of the second set ofplurality of estimated shape models comprise instructions that cause theone or more processors to: determine respective distance and orientationdifference values for each of the second set of plurality of estimatedshape models, wherein each of the respective distance and orientationdifference values is indicative of a difference in distance andorientation between respective second set of estimated shape models andthe current order shape; determine respective medialization values foreach of the second set of plurality of estimated shape models, whereineach of the medialization values is indicative of an amount by whicheach respective one of the second set of plurality of estimated shapemodels is medialized relative to a current position of the anatomicalobject; and determine respective cost values based on the respectivedistance and orientation difference values and the respectivemedialization values.
 15. The computer-readable storage medium of claim14, further comprising instructions that cause the one or moreprocessors to: determine a respective weighting values based on alikelihood of each of the respective second set of the plurality ofestimated shape models being representative of the pre-morbid shape ofthe anatomical object, wherein the instructions that cause the one ormore processors to determine respective cost values for each of thesecond set of the plurality of estimated shape models compriseinstructions that cause the one or more processors to determinerespective cost values for each of the second set of the plurality ofestimated shape models based at least in part on the respective distanceand orientation difference values, the respective medialization values,and the respective weighting values.
 16. The computer-readable storagemedium of claim 15, wherein the instructions that cause the one or moreprocessors to determine the respective weighting values compriseinstructions that cause the one or more processors to perform${\sum_{l}^{N}{\frac{\sum_{j}^{i}\lambda_{j}}{\sum_{j}^{N}{\lambda\; j}} \times b_{i}^{2}}},$wherein N equals a number of modes used to build respective second setof plurality of estimated shape models, wherein λ equals eigenvalues ofthe shape model, and b equals a scaling factor used to determinerespective plurality of estimated shape models.
 17. Thecomputer-readable storage medium of claim 14, wherein the instructionsthat cause the one or more processors to determine respective distanceand orientation difference values for each of the second set ofplurality of estimated shape models comprise instructions that cause theone or more processors to: determine respective distances betweencorresponding points on respective second set of plurality of estimatedshape models and the determined shape; determine respective angulardifferences between normal vectors for the corresponding points onrespective second set of plurality of estimated shape models and thedetermined shape; and determine respective distance and orientationdifference values based on the determine respective distances and thedetermined respective angular differences.
 18. The computer-readablestorage medium of claim 14, wherein the instructions that cause the oneor more processors to determine respective medialization values for eachof the second set of plurality of estimated shape models compriseinstructions that cause the one or more processors to: divide image dataof the anatomical object into a plurality of portions; project pointsfrom each of the plurality of portions to a transverse axis; determine athreshold point from one of the projected points; determine a mostlateral portion from the plurality of portion; determine a portion ineach of the second set of plurality of estimated shape models thatcorresponds to the determined most lateral position; project points fromthe determined portion in each of the second set of plurality ofestimated shape models to the transverse axis; determine distances fromthe projected points to the threshold point; and determine respectivemedialization values for each of the second set of plurality ofestimated shape models based on the determined distances.
 19. A systemfor determining a pre-morbid shape of an anatomical object of anorthopedic joint of a patient, the system comprising: means forreceiving an aligned shape and a shape model; means for performing aniterative closest point (ICP) loop, wherein the means for performing theICP loop comprises: means for modifying the aligned shape; means forcomparing the modified aligned shape to the shape model; means fordetermining a cost value based on the comparison; and means forrepeating the modifying, comparing, and determining until the cost valuesatisfies a threshold value to generate a first order shape, wherein thefirst order shape comprises the modified aligned shape associated withthe cost value that satisfies the threshold value; means for performingan elastic registration (ER) loop, wherein the means for performing theER loop comprises: means for receiving the first order shape and theshape model; means for determining respective cost values for each of afirst set of plurality of estimated shape models based on the firstorder shape and respective plurality of estimated shape models, whereinthe plurality of estimated shape models is generated based on the shapemodel; and means for determining a first estimated shape model of theplurality of estimated shape models associated with a cost value of therespective cost values that satisfies a first threshold value, whereinthe estimated shape model comprises a first order shape model; and meansfor repeatedly performing the ICP loop and the ER loop until a costvalue generated from an iteration of the ER loop satisfies a secondthreshold value to determine the pre-morbid shape of the anatomicalobject, wherein the means for repeatedly performing the ICP loop and theER loop comprises: means for receiving, for the ICP loop, an order shapemodel generated by a previous ER loop and an order shape generated by aprevious ICP loop; means for generating, by the ICP loop, a currentorder shape based on the order shape model and the order shape; meansfor receiving, for the ER loop, the current order shape and at least oneof shape model or the order shape model generated by the previous ERloop; means for generating a next set of plurality of estimated shapemodels based on at least one of the shape model or the order shape modelgenerated by the previous ER loop; means for determining respective costvalues for each of the second set of plurality of estimated shape modelsbased on the order shape of the current order shape and respectivesecond set of plurality of estimated shape models; and means fordetermining a current estimated shape model of the second set ofplurality of estimated shape models associated with a cost value of therespective cost values that satisfies the first threshold value, whereinthe current estimated shape model comprises a current order shape modelgenerated by the ER loop.
 20. The system of claim 19, wherein the meansfor determining respective cost values for each of the second set ofplurality of estimated shape models comprises: means for determiningrespective distance and orientation difference values for each of thesecond set of plurality of estimated shape models, wherein each of therespective distance and orientation difference values is indicative of adifference in distance and orientation between respective second set ofestimated shape models and the current order shape; means fordetermining respective medialization values for each of the second setof plurality of estimated shape models, wherein each of themedialization values is indicative of an amount by which each respectiveone of the second set of plurality of estimated shape models ismedialized relative to a current position of the anatomical object; andmeans for determining respective cost values based on the respectivedistance and orientation difference values and the respectivemedialization values.
 21. The system of claim 20, further comprising:means for determining a respective weighting values based on alikelihood of each of the respective second set of the plurality ofestimated shape models being representative of the pre-morbid shape ofthe anatomical object, wherein the means for determining respective costvalues for each of the second set of the plurality of estimated shapemodels comprises means for determining respective cost values for eachof the second set of the plurality of estimated shape models based atleast in part on the respective distance and orientation differencevalues, the respective medialization values, and the respectiveweighting values.
 22. The system of claim 21, wherein the means fordetermining the respective weighting values comprises means forperforming${\sum_{l}^{N}{\frac{\sum_{j}^{i}\lambda_{j}}{\sum_{j}^{N}{\lambda\; j}} \times b_{i}^{2}}},$wherein N equals a number of modes used to build respective second setof plurality of estimated shape models, wherein λ equals eigenvalues ofthe shape model, and b equals a scaling factor used to determinerespective second set of plurality of estimated shape models.
 23. Thesystem of claim 20, wherein the means for determining respectivedistance and orientation difference values for each of the second set ofplurality of estimated shape models comprises: means for determiningrespective distances between corresponding points on respective secondset of plurality of estimated shape models and the determined shape;means for determining respective angular differences between normalvectors for the corresponding points on respective second set ofplurality of estimated shape models and the determined shape; and meansfor determining respective distance and orientation difference valuesbased on the determine respective distances and the determinedrespective angular differences.
 24. The system of claim 20, wherein themeans for determining respective medialization values for each of thesecond set of plurality of estimated shape models comprises: means fordividing image data of the anatomical object into a plurality ofportions; means for projecting points from each of the plurality ofportions to a transverse axis; means for determining a threshold pointfrom one of the projected points; means for determining a most lateralportion from the plurality of portion; means for determining a portionin each of the second set of plurality of estimated shape models thatcorresponds to the determined most lateral position; means forprojecting points from the determined portion in each of the second setof plurality of estimated shape models to the transverse axis; means fordetermining distances from the projected points to the threshold point;and means for determining respective medialization values for each ofthe second set of plurality of estimated shape models based on thedetermined distances.